Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: eine Klasse als Rückgabetyp??

  Alt 4. Mär 2007, 20:58
Ja, du kannst si in dieser add-funktion erstellen und später wieder freigen, wenn du sie in der aufrufenden funktion nicht mehr benötigst.
Wie dir ja auch aufgefallen ist, führt dies leicht zu Fehlern. Eine Alternative wäre die Klasse nicht als Funktionsergebnis zurückzugeben sondern sie als Parameter zu übergeben:
Delphi-Quellcode:
procedure add(v:vector;const to_add:vector);
begin
  to_add.dosomething;
end;
...

my_vector:=Tvector.create;
add(v,my_vector);
...
my_vector.free;
Damit hast du dann die Kontroll über den Speicher der Klasse an einer Stelle. aber sehe ies nur als Alternative. Es ist nicht immer möglich.


Roter Kaste: Ich habe mehr geschrieben
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat