Hallo
Ich moechte in einem Child-Objekt gerne einen Zeiger auf das Parent-Objekt haben.
Da ich das allerdings in mehreren Methoden in diesem Child-Objekt haben moechte, moechte ich nicht jedesmal mit GetParent() mir einen Zeiger holen.
Viel Lieber waere mir, wenn ich in der Header-Datei des Child-Objektes einmal einen Zeiger deklariere, der dann einmal mit GetParent() auf das Parent-Objekt „gebogen“ wird.
Also etwa so:
#include „Parent.h“
class CChild : public CDialog
{
CParent* zeiger_auf_Parent;
}
Dann koennte ich Parent-Variablen so ansprechen:
zeiger_auf_Parent->memberVariablevonParent;
Das Problem ist nur, dass er so in der HeaderDatei beim Kompilieren sagt, dass er CParent nicht kennt.
Auch wenn ich vorher mit Include die Header-Datei vom Parent-Objekt einbinde, aendert sich nichts daran.
Meine Loesung zur Zeit sieht so aus:
class CChild : public CDialog
{
void* zeiger_auf_Parent;
}
um dann anschliessend immer einen Typcast zu machen:
((CParent*)zeiger_auf_Parent)->memberVariablevonParent;
das sieht viel unleserlicher aus als das oben.
Wodran liegt es, dass er in der Header-Datei den CParent-Typ nicht kennt (trotz #include „Parent.h“) ?
Gibt es eine einfache Methode das zu Loesen ?
Besten Dank sagt
Martin