Da Klassenvariablen eh Pointer sind, ist auch eine Rekursion innerhalb der Klasse kein Problem und absolut üblich.
Wobei man das lieber als Pointer auch deklarieren sollte der Lesbarkeit halber.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Rekursionen und Pointer: Philip wie meinst du das, dass du die Klassen lieber als Pointer deklarierst? Verstehe ich gerade nicht so recht. Also ich benutze dabei in der Klasse TBlah ganz normal instanzen von TBlah. Da Klasseninstanzen bereits Pointer sind ist das problemlos möglich. Da muss man gar keinen weiteren Aufwand betreiben.
Traude: Ich muss gestehen ich find das auch etwas verwirrend.
Bin der Meinung, das erhöht die Lesbarkeit, da es dieses Detail, dass Klassen intern eh in Pointern umgesetzt werden, nicht "ausnutzt", sondern dass man klar hier sagt, dass man einen Pointer haben will. Was ich gerade nicht weiß: Hab ich hiermit einen Pointer auf einen Pointer konstruiert?
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Japp. Das hast du. Also einen Pointer auf einen "Pointer". Genau genommen hast du einen Pointer auf die Instanzvariable. Und ich kann von so etwas nur ganz dringend abraten. Dadurch hat man einfach gar keine Vorteile und kann sich so leicht seine Daten zerschießen. Selbst wenn die Instanz noch leben sollte und man nur vergessen hat, dass es sich dabei eigentlich um eine lokale Variable gehandelt hatte. Und wirklich häufig wenn im Forum jemand Probleme mit Klassen hat dann sehe ich eben auch genau solche Konstruktionen. Also lieber lassen. Ist nicht Vorteilhaft sondern bringt nur Probleme.
kann lossy nur zustimmen - hatte mir nen zeiger auf nen TTreenode erstellt nur um dann rausfinden zu müssen das es totaler crap ist, da TTreenode selbst nen zeiger ist
Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.