Typ-Erweiterungen für Zeiger

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

TYPE
   GraphicalObject = POINTER TO GraphicalObjectRec;
   GraphicalObjectRec =
      RECORD
         x, y: INTEGER; (* center point *)
      END;
   Rectangle = POINTER TO RectangleRec;
   RectangleRec =
      RECORD
         (GraphicalObjectRec)
         width, height: INTEGER;
      END;
   Circle = POINTER TO CircleRec;
   CircleRec =
      RECORD
         (GraphicalObjectRec)
         radius: INTEGER;
      END;

*Die Erweiterungsbeziehung und die damit verbundene erweiterte Kompatibilität erstreckt sich auch auf die zugehörigen Zeigertypen.
 
*Seien folgende Definitionen gegeben: TYPE P = POINTER TO T;
TYPE Q = POINTER TO U; Dann ist ein Zeigertyp Q genau dann eine Erweiterung eines Zeigertyps P, wenn U eine Erweiterung von T ist. Ein Zeigertyp P ist genau dann ein Basistyp eines Zeigertyps Q, wenn Q eine Erweiterung von P ist.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1999 Andreas Borchert, in HTML konvertiert am 29.06.1999