Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - festes Array nicht an dyn. Array übergebbar
Xanyn - Di 25.05.04 15:30
Titel: festes Array nicht an dyn. Array übergebbar
Hallo,
ich habe das Problem, dass ich kein festen Array, auf einen dynamischen Array übergeben kann.
Das ganze sieht so aus:
Delphi-Quelltext
1: 2: 3: 4:
| AusgabeMerge(a: array of Real; lo, hi: integer):minmax; ... SetLength(pufferFix, (dCount div 2)); pufferMain:=AusgabeMerge(pufferFix, lo, hi); |
Der Array muss aber dynamisch sein, da er mit dCount erst zur laufzeit festgemacht wird und sich während der laufzeit ändert.
Wie kann ich klar machen das in "AusgabeMerge" das feste Array auf den dynamischen genommen wird.
Danke
Steffen
Moderiert von
Peter Lustig (15:31, 25.05.2004): Code- durch Delphi-Tags ersetzt
Anonymous - Di 25.05.04 15:48
So sollte es gehn:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| type TDynRealArray = array of Real;
...
function AusgabeMerge(a: TDynRealArray; lo, hi: integer):minmax;
...
var pufferFix: TDynRealArray;
...
SetLength(pufferFix, (dCount div 2)); pufferMain:=AusgabeMerge(pufferFix, lo, hi); |
Xanyn - Di 25.05.04 23:43
Und warum funktioniert das so?
ich gebe doch eigentlich nur einen anderen namen, also definiere mir einen typ und der macht dann eh das gleiche. Spart doch nur schreibarbeit ... oder passiert bei der typ-deklaration noch was myteriöses?
Danke Steffen
EUOCheffe - Mi 26.05.04 04:32
Guck mal in der Delphi Hilfe unter "Array" nach. Da bekommst du gleich mehrere Themen angezeigt:
Zitat: |
-Dynamic arrays
-Open array parameters
-Static arrays
-Variant open array parameters |
Zitat: |
Note
The syntax of open array parameters resembles that of dynamic array types, but they do not mean the same thing. The previous example creates a function that takes any array of Char elements, including (but not limited to) dynamic arrays. To declare parameters that must be dynamic arrays, you need to specify a type identifier:
type TDynamicCharArray = array of Char;
function Find(A: TDynamicCharArray): Integer;
For information about dynamic arrays, see Dynamic arrays. |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!