Compilerwarnung (Stufe 4) C4266
Aktualisiert: November 2007
Fehlermeldung
'Funktion': Keine Überschreibung für virtuelle Memberfunktion der Basis 'Typ' verfügbar; die Funktion wird ausgeblendet
'function' : no override available for virtual member function from base 'type'; function is hidden
Eine abgeleitete Klasse hat nicht alle Überladungen einer virtuellen Funktion überschrieben.
Diese Warnung ist standardmäßig deaktiviert. Weitere Informationen finden Sie unter Compiler Warnings That Are Off by Default.
Im folgenden Beispiel wird C4266 generiert:
// C4266.cpp
// compile with: /W4 /c
#pragma warning (default : 4266)
class Engine {
public:
virtual void OnException(int&,int);
virtual void OnException(int&,int&,int);
};
class LocalBinding : private Engine {
virtual void OnException(int&,int);
}; // C4266
Mögliche Lösung:
// C4266b.cpp
// compile with: /W4 /c
#pragma warning (default : 4266)
class Engine {
public:
virtual void OnException(int&,int);
virtual void OnException(int&,int&,int);
};
class LocalBinding : private Engine {
virtual void OnException(int&,int);
virtual void OnException(int&, int&, int);
};