Bagikan melalui


Compiler Warning (level 1) C4488

'function' : memerlukan kata kunci 'kata kunci' untuk mengimplementasikan metode antarmuka 'interface_method'

Kelas harus mengimplementasikan semua anggota antarmuka tempatnya langsung mewarisi. Anggota yang diimplementasikan harus memiliki aksesibilitas publik, dan harus ditandai virtual.

Contoh

C4488 dapat terjadi jika anggota yang diimplementasikan tidak bersifat publik. Sampel berikut menghasilkan C4488.

// 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 dapat terjadi jika anggota yang diterapkan tidak ditandai virtual. Sampel berikut menghasilkan C4488.

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