![]() |
Eine Function ein Array liefern lassen
Hallo, ist es eigentlich in delphi möglich eine funktion ein array liefern zu lassen?
bisher habe ich immer irgendeine notlösung entwickelt, doch vielleicht weiss jemand rat. :-) also ich meine soetwas wie
Delphi-Quellcode:
denke im voraus.
function gibmirfive (variable:String):array of Integer;
mojo |
Re: Eine Function ein Array liefern lassen
Erstelle dir einfach einen neuen Typ.
Delphi-Quellcode:
type
TMyIntArary: array of Integer; und dann function gibmirfive (variable:String): TMyIntArray; |
Re: Eine Function ein Array liefern lassen
ahaaahh!!
ok danke! |
Re: Eine Function ein Array liefern lassen
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:
Delphi-Quellcode:
procedure gibmirfive (variable:String; var MyIntArray: array of integer);
Aufruf per: gibmirfive('String', ArrayName); statt ArrayName := gibmirfive('String'); |
Re: Eine Function ein Array liefern lassen
ja. das ist dann aber wieder die art der notlösung, die ich bisher benutzt habe. quasi eine aussen leigene variable als array in der procedure bearbeiten und dann von woanders verweden...
aber klappt es denn auch wenn der zugriff units/classen übergreifend erfolgt? |
Re: Eine Function ein Array liefern lassen
Warum sollte das nicht gehen? :)
|
Re: Eine Function ein Array liefern lassen
@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 |
Re: Eine Function ein Array liefern lassen
Zitat:
|
Re: Eine Function ein Array liefern lassen
@malo
naja, aber wenn man eina rray zurückgibt muss man ja sowieso mit indexen arbeiten, oder halt die arrayelemente mit entspr. index in einer neuen variablen ablegen :stupid: |
Re: Eine Function ein Array liefern lassen
Zitat:
Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz