Compartir a través de


Error del compilador C2798

'super::miembro' es ambiguo

Observaciones

Varias estructuras heredadas contienen el miembro al que se hace referencia con super. Para corregir el error, tiene las siguientes opciones:

  • Quitar B1 o B2 de la lista de herencia de D.

  • Cambiar el nombre del miembro de datos en B1 o B2.

Example

En el ejemplo siguiente se genera la advertencia C2798:

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

struct B2 {
   int i;
};

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