Partager via


Avertissement du compilateur (niveau 1) C4486

'function' : une méthode virtuelle privée d’une classe ref ou d’une classe de valeur doit être marquée 'sealed'

Étant donné qu’une fonction membre virtuelle privée d’une classe managée ou d’un struct n’est pas accessible ou remplacée, elle doit être marquée comme scellée.

Exemples

L’exemple suivant génère l’erreur C4486.

// C4486.cpp
// compile with: /clr /c /W1
ref class B {
private:
   virtual void f() {}   // C4486
   virtual void f1() sealed {}   // OK
};

L’exemple suivant montre une utilisation possible d’une fonction virtuelle scellée privée.

// 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;
   }
};