Einzelnen Beitrag anzeigen

Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#12

Re: Eine Function ein Array liefern lassen

  Alt 17. Mär 2005, 15:29
Zitat von Airblader:
@ste_ett

Kenne mich nun nciht so aus, aber:

Angenommen ich gebe TMyIntArray zurück.
Gut, vielleicht wird es dann überschrieben, aber einmal wird es ja 100% zurückgegeben, sonst könnte bei jeder Rückgabe ja Fehler entstehen.

Wenn ich dann MyArray := GiveMeTheArray(xxx); mache, wird die Rückgabe ja sowieso einem neuem Array ( MyArray ) zugestellt und somit ist es ja egal, ob die Rückgabe wieder überschrieben wird, oder?

air
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 nicht direkt den Inhalt des Arrays. Der Speicherbereich ist offen und kann jederzeit überschrieben werden, wodurch ein Zugriff zu Fehlern führt.
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat