Thema: & Operator???

Einzelnen Beitrag anzeigen

MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
532 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: & Operator???

  Alt 28. Feb 2017, 10:14
Code:
procedure WriteBuffer(const Buffer; Count: Longint); overload;
procedure WriteBuffer(const Buffer: TBytes; Count: Longint); overload;
Das '&' wird ignoriert, aber WriteBuffer ist überladen. Damit springt der das Programm in eine andere Implementierung. Mit einem MemoryStream habe ich es grad probiert und beide respektive alle 3 Varianten funktionieren. Ist im Seattle nicht anders.

Aber mit Pointer(var) geht gar nichts.

Das macht hier gar nichts. Damit maskierst du ein reserviertes Wort um z.B. type als Eigenschaft einer Klasse nutzen zu können.

Mit dem cast auf Pointer benutzt du den Zahlenwert, der in der Variablen steht, als Speicheradresse. Je nachdem was für ein Wert das ist, gibt es dann beim Zugriff auf diesen Bereich einen Fehler. Funktioniert haben kann das vorher nicht. Jedenfalls nicht so wie du es meinst.

Das es vorher keinen Fehler gab, war einfach Zufall, weil der entsprechende Speicherbereich lesbar war.

Geändert von MichaelT (28. Feb 2017 um 11:00 Uhr)
  Mit Zitat antworten Zitat