Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   C++DLL in Delphi mit Wertrückgabe ? (https://www.delphipraxis.net/154503-c-dll-delphi-mit-wertrueckgabe.html)

Christian Seehase 16. Sep 2010 20:15

AW: C++DLL in Delphi mit Wertrückgabe ?
 
Moin Himitsu,

das hier

Delphi-Quellcode:
Tausche(a, b: PInteger)
würde zwar auch funktionieren, dann könnte man aber innerhalb der aufgerufenen Funktion die Werte von a und b ändern, ohne, dass der Aufrufer davon etwas mitbekäme, da sie als Kopie übergeben werden würden.

Delphi-Quellcode:
Tausche(const a, b: PInteger)
wäre ähnlicher zu
Delphi-Quellcode:
Tausche(var a, b: Integer)
, nur dass man eben auch nil als a bzw. b übergeben kann, was für die gezeigte Funktion aber etwas "ungünstig" wäre.
Da man in C Werte ja nur via Pointer zum Ändern übergeben kann, ist die Variante mit const eigentlich die genauere Übersetzung (weswegen ich bei den API-Importen die Parameter auch immer mit const deklariere :wink:)


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:34 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz