Datenstrukturen mit Zeigern

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

*Einfache Listen und assoziative Arrays sind für viele Probleme unzureichend, bei denen kompliziertere Datenstrukturen notwendig sind.
 
*Bei Listen und assoziativen Arrays ist in Perl die Restriktion, daß Elemente nur Skalare sein können. Somit wird z.B. eine Liste von Listen oder ein assoziatives Array mit Listen nicht direkt unterstützt.
 
*Stattdessen unterstützt Perl sichere Zeiger, die zwar nicht typgebunden sind, aber trotzdem immer wissen, worauf sie zeigen.
 
*Natürlich kann Speicher dynamisch beschafft werden (dafür gibt es sogar mehrere Möglichkeiten).
 
*Eine Speicherfreigabe gibt es nicht -- stattdessen kümmert sich darum eine Garbage-Collection, die auf Basis von Referenz-Zählern arbeitet. Bei zyklischen Datenstrukturen sind somit Speicherlecks denkbar.
 
*Da Zeiger immer wohldefiniert sind (entweder undef oder auf ein lebendes Objekt zeigend, dessen Typ Perl bekannt ist), gibt es keine Probleme mit Zeigern, die ``in den Wald zeigen''.
 
*Die Notation in Zusammenhang mit Zeigern ist zunächst sehr gewöhnungsbedürftig, da sie kaum Ähnlichkeiten mit anderen Programmiersprachen aufweist. Aber man kann sich daran gewöhnen...
 
*Nach wie vor läßt sich jeweils der Typ bzw. die Datenstruktur direkt dem Ausdruck ablesen.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1996 - 2003 Andreas Borchert, in HTML konvertiert am 01.10.2003