Compiler Warning (level 4) C4435
'class1' : Tata letak objek di bawah /vd2 akan berubah karena basis virtual 'class2'
Peringatan ini nonaktif secara default. Lihat Peringatan Pengkompilasi yang Nonaktif secara Default untuk informasi selengkapnya.
Di bawah opsi kompilasi default /vd1, kelas turunan tidak memiliki vtordisp
bidang untuk basis virtual yang ditunjukkan. Jika /vd2 atau #pragma vtordisp(2)
berlaku, vtordisp
bidang akan ada, mengubah tata letak objek. Hal ini dapat menyebabkan masalah kompatibilitas biner jika modul yang berinteraksi dikompilasi dengan pengaturan yang berbeda vtordisp
.
Contoh
Sampel berikut menghasilkan C4435.
// C4435.cpp
// compile with: /c /W4
#pragma warning(default : 4435)
class A
{
public:
virtual ~A() {}
};
class B : public virtual A // C4435
{};
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk