Delen via


Compilerwaarschuwing (niveau 1) C4488

'function': vereist trefwoord 'trefwoord' om de interfacemethode 'interface_method' te implementeren

Opmerkingen

Een klasse moet alle leden van een interface implementeren waaruit deze rechtstreeks wordt overgenomen. Een geïmplementeerd lid moet openbare toegankelijkheid hebben en moet worden gemarkeerd als virtueel.

Voorbeelden

C4488 kan optreden als een geïmplementeerd lid niet openbaar is. In het volgende voorbeeld wordt C4488 gegenereerd.

// C4488.cpp
// compile with: /clr /c /W1 /WX
interface struct MyI {
   void f1();
};

// implemented member not public
ref class B : MyI { virtual void f1() {} };  // C4488

// OK
ref class C : MyI {
public:
   virtual void f1() {}
};

C4488 kan optreden als een geïmplementeerd lid niet is gemarkeerd als virtueel. In het volgende voorbeeld wordt C4488 gegenereerd.

// C4488_b.cpp
// compile with: /clr /c /W1 /WX
interface struct MyI {
   void f1();
};

ref struct B : MyI { void f1() {} };   // C4488
ref struct C : MyI { virtual void f1() {} };   // OK