Einzelnen Beitrag anzeigen

Frickeldrecktuxer_TM
(Gast)

n/a Beiträge
 
#8

Re: Unterschied Pointer/Referenzvariablen

  Alt 1. Mär 2006, 21:09
@GünterS:
das ist schon immer so. führe folgenden code aus:
Delphi-Quellcode:
type
  TSomeClass = class
    data: Integer;
  end;


procedure DoSomething(aObject: TSomeClass);
begin
  aObject := TSomeClass.Create;
  aObject.data := 42;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  obj: TSomeClass;
begin
  obj := TSomeClass.Create;
  obj.data := 23;
  DoSomething(obj);
  ShowMessage(obj.data);
end;
dir ist wahrscheinlich genau das passiert, was viele bei objekten zunächst nicht verstehen nämlich daß es nur eine objektreferenz deren objekt ich zwar manipulieren kann die ich aber selbst nicht ändern kann weil sie lediglich eine lokale kopie ist.

@Kouran:
außer in altem code gar nicht. einige winapi funktionen verlangen noch pointer auf strukturen aber prinzipiell kannst du alles was mit pointern möglich ist auch mit objekten erreichen. zum beispiel kannst du verkettete listen mit objekten genauso machen wie mit pointern auf records und es macht für die funktionalität keinerlei unterschied. das heißt du kannst mittlerweile fast komplett ohne pointer programmieren. das prinzip solltest du dennoch verstehen weil es dir bei objekten begegnet.
  Mit Zitat antworten Zitat