Предупреждение компилятора (уровень 1) C4486
Function: частный виртуальный метод класса ссылок или класса значений должен быть помечен как "запечатанный".
Так как к частной виртуальной функции-члену управляемого класса или структуры не удается получить доступ или переопределить, он должен быть помечен как запечатанный.
Примеры
Следующий пример приводит к возникновению ошибки C4486.
// C4486.cpp
// compile with: /clr /c /W1
ref class B {
private:
virtual void f() {} // C4486
virtual void f1() sealed {} // OK
};
В следующем примере показано одно возможное использование закрытой запечатаной виртуальной функции.
// C4486_b.cpp
// compile with: /clr /c
ref class B {};
ref class D : B {};
interface class I {
B^ mf();
};
ref class E : I {
private:
virtual B^ g() sealed = I::mf {
return gcnew B;
}
public:
virtual D^ mf() {
return gcnew D;
}
};