Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: Wie einer Function einen 'Datentyp' übergeben??

  Alt 22. Okt 2005, 01:43
Hab nur ich Probleme mit dem letzten Code?

SizeOf kann nicht kleiner als 0 sein ... sogar Delphi hat was dagegen
Zitat von Delphi-Compiler:
[Warnung] xxx: Der Vergleich ergibt immer Falsch
Und ein dereferenzierter Pointer ist kein Datentyp und hat die Größe 0?

Also
Sizeof(Daten^) < 0
0 < 0
False

[add]
Ach ja, Datensize = Int64
MOVE möchte da gern 'nen Integer ... wir sind noch nicht im 64-Bit Zeitalter

Und da Move intern selber nochmal prüft, ob die übergebenen Pointer NIL sind, ist demnach die If-Abfrage
if Daten = nil then exit; ebenfall unnötig.
Demnach ist ein
Move(Daten, ExportDaten, SizeOf(ExportDaten)); , ohne eine Funktion drumrum, völlig ausreichend. (jedenfalls bei dem obrigen Beispiel)
$2B or not $2B
  Mit Zitat antworten Zitat