Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.183 Beiträge
 
Delphi 12 Athens
 
#3

AW: Leere Records...

  Alt 8. Dez 2010, 08:39
Das ist wie mit den 0-Arrays.

c = array[0..0] of irgendwas; Es gibt oftmals (ich nenn sie mal) Zugriffsarrays, welche für nicht zur Datenhaltung, sondern nur zu besseren Zugriff auf einen anderen Puffer diehnen.

Also wo man dann den Record/Array nur als Pointertyp irgendwo drüberlegt, bzw. wo der Speicher z.B. über GetMem/GetMemory verwaltet wird.

In der WinAPI findet man sowas öfters, bei dynamischen Structuren, wo die Größe und/oder der Typ des Recordendes nicht fest definiert ist.

Über diesen Dummy-Record hat man dann aber wenigstens einen Zugriff auf den Anfang der Zusatzdaten.


PS: Record End; ist immer 0 Byte, wärend Array[0..0] leider noch 1 Feld enthält.

Bei [0..0] gibt es aber einen Bonus ... man kann zumindestens den Typen festlegen und auch über das Array zugreifen, da bei diesem Sonderfall die Bereichsprüfung des Arrays deaktiviert ist.
Im Arraytyp ist dann zwar nur 1 Feld definiert, aber wenn man den Array als Zeigertyp nutzt, dann steht das für [0..sovielmanwill] .
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat