Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
'derived_class': il layout dell'oggetto in
/vd2cambierà a causa della base virtuale 'base_class'
Osservazioni:
Per impostazione predefinita, questo avviso non è attivo. Per altre informazioni, vedere Compiler Warnings That Are Off by Default.
Nell'opzione di compilazione predefinita di /vd1, la classe derivata non ha un vtordisp campo per la base virtuale indicata. Se /vd2 o #pragma vtordisp(2) è attivo, è presente un vtordisp campo, modificando il layout dell'oggetto. Questa differenza può causare problemi di compatibilità binaria se l'interazione dei moduli viene compilata con impostazioni diverse vtordisp .
Esempio
L'esempio seguente genera l'errore C4435.
// C4435.cpp
// compile with: /c /W4
#pragma warning(default : 4435)
class A
{
public:
virtual ~A() {}
};
class B : public virtual A // C4435
{};