vererbungsproblem
Verfasst: 18. April 2006 10:03
Ich habe folgende Klassen:
//class BaumElement
BaumElement::BaumElement(Datei* _datei) : QTreeWidgetItem(){
this->dateiZeiger = _datei;
...
}
//Class Datei
Datei::Datei(char* _url){
this->url = _url;
...
}
//CLass DateiErgzusbin
DateiErgzusBin::DateiErgzusBin(char* _url) : Datei(_url){
...
}
1) mit dem code:
DateiErgzusBin* d = new DateiErgzusBin("test");
Datei* d2 = (Datei*) d;
string name = d2->getUrl();
bekomme ich name = test;
2) aber mit dem code:
DateiErgzusBin* d = new DateiErgzusBin("test");
BaumElement* b = new BaumElement(d);
Datei* d2 = b->getDatei();
string name = d2->getUrl();
bekomme ich name = ""!!! warum?
Wenn ich meine Datei in das BaumElement reintue, wird die Eigenschaft name zu "" (es ist nur name einen string ist; Wenn name einen Double ist kriege ich auch den richtigen wert raus).
danke
//class BaumElement
BaumElement::BaumElement(Datei* _datei) : QTreeWidgetItem(){
this->dateiZeiger = _datei;
...
}
//Class Datei
Datei::Datei(char* _url){
this->url = _url;
...
}
//CLass DateiErgzusbin
DateiErgzusBin::DateiErgzusBin(char* _url) : Datei(_url){
...
}
1) mit dem code:
DateiErgzusBin* d = new DateiErgzusBin("test");
Datei* d2 = (Datei*) d;
string name = d2->getUrl();
bekomme ich name = test;
2) aber mit dem code:
DateiErgzusBin* d = new DateiErgzusBin("test");
BaumElement* b = new BaumElement(d);
Datei* d2 = b->getDatei();
string name = d2->getUrl();
bekomme ich name = ""!!! warum?
Wenn ich meine Datei in das BaumElement reintue, wird die Eigenschaft name zu "" (es ist nur name einen string ist; Wenn name einen Double ist kriege ich auch den richtigen wert raus).
danke