Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
22. Jan 2015
Genau, das gibt einen Typen "Variant" zurück (wo ein Variant-Array drin steckt) und du weißt es an einen Typen "Array of Variant" zu.
Und die Funktionen für das Auslesen der zweiten Ebene wurden mehrmals genannt, also nicht Length, High oder so, sondern VarArrayHighBound-VarArrayLowBound.
Ja, es gibt kein VarArrayLength, aber hier muß man auch beachten, daß Vairant-Arrays nicht bei 0 beginnen...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
21. Jan 2015
Ohh, dann hast du Glück, daß automatisch _VarToDynArray aufgerufen wird, was aus deinem erstellten Variant-Array ein dynamisches Array macht.
DynArrayToVariant DynArrayFromVariant
Hätte jetzt nicht erwartet, daß Delphi das automatisch macht, aber dennoch ist es praktisch falsch, da du dort eben ein dynamisches Array erstellen wolltest, es aber nicht machst.
Und später versuchst du eines der...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
21. Jan 2015
Und dann sollte man langsam mal den Unterschied zwischen Array, Variant und Variant-Array verstehen, dann wird klar, daß
lArray1 := VarArrayCreate(,varVariant); natürlich nicht funktionieren kann.
Die 1. Ebene ist ein stinknormales Array, also wird da mit SetLength/Length gearbeitet und erst in Ebene 2 kommen die Variants, in welche man Variant-Arrays reintun kann, wo man dann mit...