Compartir a través de


Error del compilador C3254

"explicit override": la clase contiene la invalidación explícita "override", pero no deriva de una interfaz que contiene la declaración de función

Al invalidar explícitamente un método, la clase que contiene la invalidación debe derivar, directa o indirectamente, del tipo que contiene la función que se va a invalidar.

El ejemplo siguiente genera el error C3254:

// C3254.cpp
__interface I
{
   void f();
};

__interface I1 : I
{
};

struct A /* : I1 */
{
   void I1::f()
   {   // C3254, uncomment : I1 to resolve this C3254
   }
};

int main()
{
}