Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
22. Nov 2022
Manchmal will man absichtlich unterschiedliche, nicht zuweisungskompatible Typen haben,
z.B. wenn du eine überladene Methode für zwei solcher Typen hast.
Aber ansonsten ist es super, weil du überall ein TArray<Byte> oder TArray<string> schreiben kannst,
und dieser Typ auch mit Typen und Methoden in anderen Units (vorallem Fremdkomponenten) kompatibel ist.
Beispiel TBytes von Delphi vs....
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
22. Nov 2022
Funktionell ist es das "Gleiche".
Nur die Ausnahme mit dem Methoden-Parameter, wo array of eine andere Bedeutung besitzt. (OpenArray)
Aber bei der Kompatibilität hat DynArray mit array of T einen Unterschied zum generischen TArray<T>.
Denn der Generic wird Programmweit "identisch" als "eine" Typdeklaration behandelt, wärend jedes array of T je ein "eigener" Typ wird.