Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 04, 2025 10:42

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 22 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 06, 2009 02:14 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 29, 2003 00:11
Beiträge: 436
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. :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 06, 2009 09:52 
Offline
DGL Member

Registriert: Mi Nov 12, 2008 18:27
Beiträge: 134
joa, ich nutz das auch

type Aufgabe=class(...)
...
...

Aufgaben:Array of Aufgabe;
end;

und ich bin echt froh das es geht :D


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 06, 2009 10:18 
Offline
DGL Member
Benutzeravatar

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. ;)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 06, 2009 12:10 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 29, 2003 00:11
Beiträge: 436
Ich meinte sowas:
Code:
  1.  
  2. type Aufgabe=class(...)
  3. ...
  4. ...
  5.  
  6. Aufgaben:Array of ^Aufgabe;
  7. end;
  8.  

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?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 06, 2009 12:46 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Sieht so aus. Aufgabe ist eine Klasse und sollte daher schon ein Pointer sein.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 06, 2009 21:41 
Offline
DGL Member
Benutzeravatar

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.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 06, 2009 23:00 
Offline
DGL Member

Registriert: Mi Nov 12, 2008 18:27
Beiträge: 134
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 :D


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 22 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 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.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]