Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Adres işleci, iyi tanımlanmış kodda işaretçi döndüremiyor
null
Açıklamalar
adres işleci işleneninin adresini döndürür. Bu değer hiçbir zaman ile nullptrkarşılaştırılmamalıdır:
- Bir alanın adresi yalnızca temel işaretçinin olması
nullptrve alanın sıfır uzaklığında olması (nullptranlamına gelir&p->field == nullptr) olabilirp == nullptr. Bu durumda ifade basitleştirilmiş olmalıdır. - Diğer durumlarda, kodda tanımlanmamış bir davranış olmadığı sürece birli
&işlecin değeri olamaznullptr(&v == nullptrher zaman false olarak değerlendirilir).
Örnek
Aşağıdaki örnek C6397 oluşturur:
bool isNull(int *a)
{
return &a == nullptr; // C6397 reported here.
}
Bu sorunu düzeltmek için, birli & kullanımının kasıtlı olup olmadığını bir kez daha denetleyin:
bool isNull(int *a)
{
return a == nullptr; // no C6397 reported here.
}