Forum: Programmieren allgemein
by himitsu,
15. Dez 2019
Joar, ich hätte auch ein S:=Copy(S) oder UniqueString(S) benutzen können.
Wollte damit einfach erreichen, dass der String nur eine Referenz besitzt und kein Link auf eine Konstante ist, damit er eine echte Variable wird und am Ende auch wirklich abgeräumt wird.
Nja, für den perfekten Test müsste man noch FastMM dazu bringen den Speicher wirklich freizugeben.
StringOfChar('x',...
Forum: Programmieren allgemein
by himitsu,
8. Dez 2019
ich meinte natürlich
Typ/Variable: array of xyz (das enstspricht intern TArray<xyz>)
Parameter-Definition: array of xyz
Bei deinem TVarRec mußt du aber aufpassen, dass das worauf das VarRec zeig, auch nach Aufruf der Funktion noch existiert.
Ja, dass dieses const = TVarRect, das kann ich nicht abstreiten.
Allerdings ist der Inhalt dieses Arrays nur wärend der Laufzeit der Methode gültig,...
Forum: Programmieren allgemein
by himitsu,
6. Dez 2019
NEIN, denn array of const ist nicht gleich array of const!
Als Parameter sind array of-Definitionen ein eigener Typ/Mechianismus, der intern auch komplett anders arbeitet und aufgebaut ist.
http://docwiki.embarcadero.com/RADStudio/Rio/en/Open_Arrays
Forum: Programmieren allgemein
by himitsu,
5. Dez 2019
Weil ich's grade sehe.
Gab es nicht irgendwo einen Array-Helper (paar mal gesehn, aber immer wenn ich es suche, dann finde ich nichts :stupid:),
der ein OpenArray (array of T) als Parameter entgegen nimmt und ein dynmaisches TArray<T> zurück gibt?
Bei OpenArrays kann man alle Array-Typen reingeben und der Compiler kopiert notfalls automatisch um.
Drinnen in dem Helper wäre dann aber auch...
Forum: Programmieren allgemein
by himitsu,
26. Mär 2010
Als Konstante kann man nur statische Arrays verwenden, eine automatische Zählung der nötigen Arraygröße ist leider nicht möglich, also mußt du die Größe manuell angeben.
Das Einzige was möglich ist, ware eine dynamische Array-Variable nachträglich mit dem Inhalt einer statischen Array-Konstante zu belegen.
OK, man könnte zwar auch eine dynamische Arraykonstante erstellen und schon zur...