Hallo
Ich habe eine Basisklasse, von der ich eine Klasse ableite. Eine Funktion aus der abgeleiteten Klasse soll andere Standardparameter haben als die Funktion der Basisklasse, ansonsten aber identisch sein.
Also beispielsweise:
void BaseClass::Open(int x=1, int y=2);
void DerivedClass::Open(int x=2, int y=4);
Wie kann ich das lösen?
Programmieren - alles kontrollieren 4.941 Themen, 20.715 Beiträge
Indem du die default parameter in die deklaration packst.
#include <iostream.h>
class BaseClass {
public:
void Open(int x=1, int y=2){// <- hier!
cout << x << " " << y << endl;
}
};
class DerivedClass : BaseClass {
public:
void Open(int x=2, int y=4){// <- und hier!
BaseClass::Open(x, y);
}
};
int main(int argc, char* argv[])
{
BaseClass b;
DerivedClass d;
b.Open();
d.Open();
return 0;
}
mr.escape
Super, vielen Dank!
Funktioniert! :)