Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Zeiger und Klassen


drvj - Sa 22.11.03 15:55
Titel: Zeiger und Klassen
Hallo,
ich habe folgendes Problem.
Ich habe eine Unit erstellt, die die Klasse TEngine enthält.
Diese Klasse enthält einen Zeiger vom Typ TImage.
Folgendes geht nicht:

Quelltext
1:
2:
3:
4:
5:
var e:TEngine;
      img:TImage;
begin
e.zeiger := @img;
end;


dieses geht jedoch

Quelltext
1:
2:
3:
4:
5:
var zeiger:^TImage;
      img:TImage;
begin
zeiger := @img;
end;


vielen dank im voraus


UC-Chewie - Sa 22.11.03 16:55

Instanzvariablen sind nichts anderes als Zeiger auf die Instanz.
Im oberen Code weist du also einem Zeiger auf das Objekt einen Zeiger zu, der auf einen Zeiger auf das Objekt zeigt.

Im zweiten Beispiel definierst du dir aber einen Zeiger auf einen Zeiger, und so ist die Zuweisung natürlich gültig.