Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
"derived_class": Objektlayouten under
/vd2ändras på grund av den virtuella basen "base_class"
Anmärkningar
Den här varningen är inaktiverad som standard. Mer information finns i Kompilatorvarningar som är inaktiverade som standard.
Under standardkompileringsalternativet för /vd1har vtordisp den härledda klassen inget fält för den angivna virtuella basen. Om /vd2 eller #pragma vtordisp(2) är i kraft finns ett vtordisp fält som ändrar objektlayouten. Den här skillnaden kan leda till problem med binär kompatibilitet om interagerande moduler kompileras med olika vtordisp inställningar.
Example
I följande exempel genereras C4435.
// C4435.cpp
// compile with: /c /W4
#pragma warning(default : 4435)
class A
{
public:
virtual ~A() {}
};
class B : public virtual A // C4435
{};