Предупреждение компилятора (уровень 1) C4526
Function: статическая функция-член не может переопределить виртуальную функцию "виртуальная функция", переопределенную, виртуальная функция будет скрыта
Статическая функция-член соответствует критериям переопределения виртуальной функции, которая делает функцию-член как виртуальной, так и статической.
Следующий код создает C4526:
// C4526.cpp
// compile with: /W1 /c
// C4526 expected
struct myStruct1 {
virtual void __stdcall func( int ) = 0;
};
struct myStruct2: public myStruct1 {
static void __stdcall func( int );
};
Ниже приведены возможные исправления.
Если функция была предназначена для переопределения виртуальной функции базового класса, удалите статический описатель.
Если функция была предназначена для статической функции-члена, переименуйте ее, чтобы она не конфликтовала с виртуальной функцией базового класса.