Einzelnen Beitrag anzeigen

iphi

Registriert seit: 13. Feb 2009
262 Beiträge
 
Delphi 7 Personal
 
#8

AW: Invalid Pointer Problem in DLL

  Alt 10. Feb 2013, 18:22
Zitat:
Der Zeiger aus den eigentliche Buffer, in dem Beispiel @Frequ[0] kann bedenkenlos übergeben werden
Dann kann ich aber auch einfach Freq übergeben, weil Pointer(Freq) und @Freq[0] sind identisch, habs gerade ausprobiert.
D.h.:
Delphi-Quellcode:
var Freq: array of double;
function funct(f: pointer):TIrgendwas;
...
funct(Freq);
... ist identisch mit
funct(pointer(Freq));
... ist identisch mit
funct(@Freq[0]);
Und Delphi übergibt offensichtlich bei einem dynamischen Array im Funktionsargument den Zeiger auf die Daten.
Sonst würde mein Beispiel nicht funktionieren.
Eine C++ Funktion kann so einfach mit einem Typecast auf ein Array darauf zugreifen.
  Mit Zitat antworten Zitat