Avviso del compilatore C4485
'override_function': corrisponde al metodo della classe di riferimento di base 'base_class_function ', ma non è contrassegnato come 'new' o 'override'; Si presuppone 'new' (e 'virtual')
Una funzione di accesso esegue l'override, con o senza la virtual
parola chiave , di una funzione di accesso della classe base, ma l'identificatore override
o new
non faceva parte della firma della funzione di override. Aggiungere l'identificatore o override
per risolvere l'avvisonew
.
Per altre informazioni, vedere Override e new (new slot in vtable).
C4485 viene sempre generato come errore. Usare il pragma di avviso per eliminare C4485.
Esempio
L'esempio seguente genera l'errore C4485
// C4485.cpp
// compile with: /clr
delegate void Del();
ref struct A {
virtual event Del ^E;
};
ref struct B : A {
virtual event Del ^E; // C4485
};
ref struct C : B {
virtual event Del ^E {
void raise() override {}
void add(Del ^) override {}
void remove(Del^) override {}
}
};