Forum: Object-Pascal / Delphi-Language
Delphi
by ste_ett,
17. Mär 2005
Ja, es kann theoretisch bei jeder Rückgabe zu Fehlern kommen.
Beim Beenden wird der gesamte Speicher, den diese Funktion genutzt hat, wieder freigegeben zur weiteren Nutzung.
Ob dieser Speicher genau in dem Moment wieder genutzt wird, hängt vom Speicherbedarf des Systems, bzw der laufenden Prozesse, ab.
Bei einem Array bekommst du nur den Pointer auf die Stelle im Speicher. Du speicherst...
Forum: Object-Pascal / Delphi-Language
Delphi
by ste_ett,
17. Mär 2005
Warum sollte das nicht gehen? :)
Forum: Object-Pascal / Delphi-Language
Delphi
by ste_ett,
17. Mär 2005
Bei Rückgabe von Arrays durch Funktionen ist es nicht garantiert, dass der Speicherbereich, in dem der Array liegt, unberührt bleibt, da dieser nach Beenden der Funktion wieder von anderen Programmteilen nutzbar ist.
Besser wäre da:
procedure gibmirfive (variable:String; var MyIntArray: array of integer);
Aufruf per:
gibmirfive('String', ArrayName);
Forum: Object-Pascal / Delphi-Language
Delphi
by ste_ett,
17. Mär 2005
Erstelle dir einfach einen neuen Typ.
type
TMyIntArary: array of Integer;
und dann
function gibmirfive (variable:String): TMyIntArray;