Partage via


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 l’mot clé virtual , 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 {}
   }
};