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.
Yıkıcı geçersiz kılınırken açık 'geçersiz kılma' veya 'sanal' tanımlayıcıları kullanılmamalıdır.
Bu uyarı, C++ Çekirdek Yönergelerinde C.128'de yapılan değişiklikleri yansıtmak için Visual Studio 16.8'de kaldırıldı.
C++ Temel Yönergeleri
C.128: Sanal işlevler tam olarak sanal, geçersiz kılma veya son değerlerden birini belirtmelidir.
Temel Yönergelerle ilgili geçerli fikir birliği, yıkıcıları 'açıkça geçersiz kıl' önerisinin dışında tutmaktır.
Notlar
- Kural, açıkça 'sanal' veya 'geçersiz kılma' tanımlayıcılarını kullanan yıkıcıları geçersiz kılmaya bayrak ekler.
- Yıkıcılar özel semantiği nedeniyle 'final' tanımlayıcısını kullanmaya devam edebilir.
- Uyarılar, bildirimlerde değil işlev tanımlarında gösterilir. Tanımlarda sanal tanımlayıcılar olmadığından, ancak uyarı yine de uygun olduğundan bu durum kafa karıştırıcı olabilir.
Kod analizi adı: NO_EXPLICIT_DTOR_OVERRIDE
Örnek: Açık 'geçersiz kılma'
class Transaction {
public:
virtual ~Transaction();
// ...
};
class DistributedTransaction : public Transaction {
public:
~DistributedTransaction() override { // C26443
// ...
}
};
Ayrıca bkz.
C.128: Sanal işlevler tam olarak sanal, geçersiz kılma veya son işlevlerden birini belirtmelidir