Avertissement du compilateur C4485
'override_function' : correspond à la méthode de classe ref de base 'base_class_function', mais n’est pas marquée 'new' ou 'override' ; 'new' (et 'virtual') est supposé
Un accesseur remplace, avec ou sans le virtual
mot clé, une fonction d’accesseur de classe de base, mais le override
ou new
le spécificateur ne faisait pas partie de la signature de fonction substituée. Ajoutez le ou override
le new
spécificateur pour résoudre cet avertissement.
Pour plus d’informations, consultez remplacement et nouvel emplacement (nouvel emplacement dans vtable).
C4485 est toujours émis en tant qu’erreur. Utilisez le pragma d’avertissement pour supprimer C4485.
Exemple
L’exemple suivant génère l’erreur 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 {}
}
};