![]() |
Re: Visual C++ DLL in nutzen - Pointer und Array of Double?
beim dynamichen array wird genau so das @ benötigt. Also es wird in beidne Fällen die Adresse vom Anfang der Daten benötigt was die Adresse des 0ten Ellementes ist.
|
Re: Visual C++ DLL in nutzen - Pointer und Array of Double?
Hi,
ich dachte immer bei einem dynamischen Array repräsentiert Element[0] einen Zeiger. Gruß oki |
Re: Visual C++ DLL in nutzen - Pointer und Array of Double?
Nein. Element ist ein Zeiger (auf ein statisches Array), und indiziert ist es einfach vom Basisdatentyp.
|
Re: Visual C++ DLL in nutzen - Pointer und Array of Double?
Zitat:
gruß oki |
Re: Visual C++ DLL in nutzen - Pointer und Array of Double?
Ich rede auch vom dynamischen Array. :-D Und ein dynamisches Array ist ein Zeiger auf ein statisches Array.
|
Re: Visual C++ DLL in nutzen - Pointer und Array of Double?
Hmmm,
Sonntag scheint nicht mein hellster Tag zu sein. Du hast aber recht. Das ist das was man Zeiger auf einen Zeiger nennt, glaub ich. (ich hab den Eindruck ich glaube hier viel und weis wenig :cry: ) Gruß oki |
Re: Visual C++ DLL in nutzen - Pointer und Array of Double?
Nein, das "bezeigerte" Array enthält die Elemente selbst, keine Zeiger darauf.
Hier sind deshalb äquivalente Konstrukte:
Delphi-Quellcode:
Einziger Unterschied ist, dass es bei dynamischen Arrays noch Referenzzählung gibt.
procedure dynamisch;
var arr: array of wasauchimmerduwillst; begin setlength(arr, 5); arr[3]:=...; setlength(arr, 0); end; procedure statisch; type statarray=array[0..high(word) div sizeof(wasimmerduwillst)-1] of wasauchimmerduwillst; var arr: ^statarray; begin getMem(arr, sizeof(wasauchimmerduwillst)*5); arr[3]:=...; freeMem(arr); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz