Compartilhar via


Erro do compilador C3240

'function': precisa ser uma função membro abstrata não sobrecarregada de 'type'

Um tipo base continha uma função que foi definida. A função precisa ser virtual.

Exemplo

O exemplo a seguir gera o erro C3240.

// C3240.cpp
// compile with: /c
__interface I {
   void f();
};

struct A1 : I {
   void f() {}
};

struct A2 : I {
   void f() = 0;
};

template <class T>
struct A3 : T {
   void T::f() {}
};

template <class T>
struct A4 : T {
   void T::f() {}
};

A3<A1> x;   // C3240
A3<I> x2;
A4<A2> x3;