Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
'derived_class_function': Gleicht die geerbte nicht virtuelle Methode "base_class_function" ab, ist jedoch nicht explizit als "neu" gekennzeichnet.
Bemerkungen
Eine Funktion in einer abgeleiteten Klasse weist dieselbe Signatur wie eine nicht virtuelle Basisklassenfunktion auf. C4487 erinnert Sie daran, dass die abgeleitete Klassenfunktion die Basisklassenfunktion nicht überschreibt. Kennzeichnen Sie die abgeleitete Klassenfunktion explizit, um new diese Warnung zu beheben.
Weitere Informationen finden Sie unter "Neu" (neuer Steckplatz in vtable).For more information, see new slot in vtable.for more information, see new (new slot in vtable).
Beispiel
Im folgenden Beispiel wird C4487 generiert.
// C4487.cpp
// compile with: /W4 /clr
using namespace System;
public ref struct B {
void f() { Console::WriteLine("in B::f"); }
void g() { Console::WriteLine("in B::g"); }
};
public ref struct D : B {
void f() { Console::WriteLine("in D::f"); } // C4487
void g() new { Console::WriteLine("in D::g"); } // OK
};
int main() {
B ^ a = gcnew D;
// will call base class functions
a->f();
a->g();
}