Erro do compilador C2723
“function”: especificador “specifier” ilegal na definição de função
O especificador não pode aparecer com uma definição de função fora de uma declaração de classe. O especificador virtual
só pode ser especificado em uma declaração de função membro dentro de uma declaração de classe.
O exemplo a seguir gera o erro C2723 e mostra como corrigi-lo:
// C2723.cpp
struct X {
virtual void f();
virtual void g();
};
virtual void X::f() {} // C2723
// try the following line instead
void X::g() {}