Compartilhar via


Erro do compilador C2798

'super::member' é ambíguo

Várias estruturas herdadas contêm o membro que você referenciou com super. Você pode corrigir o erro com um dos seguintes procedimentos:

  • Removendo B1 ou B2 da lista de herança de D.

  • Alterando o nome do membro de dados em B1 ou B2.

O seguinte exemplo gera o erro C2798:

// C2798.cpp
struct B1 {
   int i;
};

struct B2 {
   int i;
};

struct D : B1, B2 {
   void g() {
      __super::i = 4; // C2798
   }
};