Aviso do compilador (nível 4) C4435
“class1”: O layout do objeto em /vd2 será alterado devido à base class2 virtual “”
Esse aviso é desativada por padrão. Consulte Avisos de compilador desativados por padrão para maiores informações.
Na opção criar a opção /vd1, a classe derivada não tiver um campo de vtordisp para a base virtual indicada. Se /vd2 ou #pragma vtordisp(2) estão em vigor, um campo de vtordisp estiver presente, alterando o layout do objeto. Isso pode resultar em problemas de compatibilidade binário se interagindo os módulos é compilado com diferentes configurações de vtordisp .
Exemplo
O exemplo a seguir produz C4435.
// C4435.cpp
// compile with: /c /W4
#pragma warning(default : 4435)
class A
{
public:
virtual ~A() {}
};
class B : public virtual A // C4435
{};