Virtual function, andere Signatur -> Error C2660
-
Hi,
ich habe eine Basisklasse A mit der Funktion
virtual string GetX() const = 0;
In der abgeleiteten Klasse B kommt
virtual string GetX(int i) const = 0;
hinzu.
Nun erkennt der Compiler beim Aufruf von B->GetX() leider nicht das ich die erste Funktion haben will. Stattdessen wird eine C2660 geworfen.
Ist das normal?
-
OS ? Compiler ?
-
Komplette Fehlermeldung und minimales compilierbares Beispiel, bitte. So kann man nur raten. Ich könnte z.B. raten, dass die Methode private ist.
-
Poste mal ein kompilierbares Beispiel, bei dem der Fehler auftritt.
-
Ja, das ist normal. Und eine FAQ: http://www.stroustrup.com/bs_faq2.html#overloadderived
-
Bashar schrieb:
Ja, das ist normal. Und eine FAQ: http://www.stroustrup.com/bs_faq2.html#overloadderived
Ok, danke! Damit wäre die Sache geklärt.