Compilerwarnung (Stufe 1) C4488

Aktualisiert: November 2007

Fehlermeldung

'Funktion': Das 'Schlüsselwort'-Schlüsselwort muss die 'Schnittstelle'-Schnittstellenmethode implementieren
'function' : requires 'keyword' keyword to implement the interface method 'interface_method'

Eine Klasse muss alle Member einer Schnittstelle implementieren, von der sie erbt. Ein implementierter Member muss öffentlich zugreifbar sein und als virtuell gekennzeichnet werden.

C4488 kann auftreten, wenn ein implementierter Member nicht öffentlich ist. Im folgenden Beispiel wird C4488 generiert.

// 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 kann auftreten, wenn ein implementierter Member nicht als virtuell gekennzeichnet ist. Im folgenden Beispiel wird C4488 generiert.

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

Community-Beiträge

Anzeigen: