Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#5

Re: C++-Lib/Dll in Delphi einbinden

  Alt 13. Nov 2005, 19:02
Also das mit der Stringlist dürfte Schwierig werden. Wenn du den Borland C++ Builder (wie auch immer der bei Borland heißt) benutzt, hast du evtl. eine VCL die dir auch in C++ die TStringList zur Verfügung stellt. Aber für alle anderen C++ Compiler dürfte TStringList nicht wirkich existieren (auch wenn es wohl Alternativen gibt, jedoch dürften die nicht kompatibel sein).
Du hast eigentlich zwei Möglichkeiten, du schreibst die Klasse komplett in C++ nach (eher von abzuraten) oder du verwendest halt wirklich lieber ein Array vom Typ String.

Da hast du das Problem, dass Delphi Strings ein ziemlich eigener Weg sind. Du hast (wie tommie-lie schon schrieb) zwar ein String, aber (was ich eigentlich auch meinte) ist, dass du keinen Delphi-kompatiblen String hast. Wenn du ein Array von String übergeben willst, musst du den Umweg über ein Array von Array von Char gehen. Ein Array von Char (char* in C) entspricht natürlich einem PChar. Und ein Array von PChar (char** in C) ist dann das was du brauchst. Wäre jetzt zumindest für C (ohne ++) das was mir als direkte Entsprechung einfällt. Hab aber nie wirklich genug mit C/C++ gemacht um bessere Alternativen ausschließen zu können.
Jedenfalls müsstest du bei C (wieder ohne ++) unbedingt die Dimensionen von Arrays angeben. Sonst hast du ganz schnell das Problem, dass du nicht weißt wo das Array endet (gibt in C kein length).

Alternativ kannst du auch eine einfache Liste schreiben. Einfach in soweit, dass du die in Delphi und dein Kumpel in C++ schreiben kann. Dann habt ihr die entsprechung und könnt die unter verschiedenen Namen in C++ und Delphi benutzen.

Gruß Der Unwissende
  Mit Zitat antworten Zitat