Compiler Error C2575

'identifier' : only member functions and bases can be virtual

The specified global function or class was declared as virtual.

The keyword virtual refers only to members of a class or structure. A global function or a class or structure that is not a base class cannot be declared as virtual.