Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
«Classe»: a base direta «Base2» está inacessível; já uma base de 'Base1'
Observações
Class já deriva diretamente de Base1.
Base2 também deriva de Base1.
Class não pode derivar porque Base2 isso significaria herdar (indiretamente) de Base1 novo, o que não é legal porque Base1 já é uma classe base direta.
Exemplo
O exemplo a seguir gera C2584.
// C2584.cpp
// compile with: /c
struct A1 {
virtual int MyFunction();
};
struct A2 {
virtual int MyFunction();
};
struct B1: public virtual A1, virtual A2 {
virtual int MyFunction();
};
struct B2: public virtual A2, virtual A1 {
virtual int MyFunction();
};
struct C: virtual B1, B2 {
virtual int MyFunction();
};
struct Z : virtual B2, virtual C { // C2584
// try the following line insted
// struct Z : virtual C {
virtual int MyFunction();
};