AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Converter c++ to delphi

Ein Thema von MisterAHA · begonnen am 8. Mär 2008 · letzter Beitrag vom 9. Mär 2008
 
DMW

Registriert seit: 6. Sep 2006
Ort: Münster
269 Beiträge
 
Delphi XE Professional
 
#4

Re: Converter c++ to delphi

  Alt 9. Mär 2008, 18:47
Es gibt keine Programme, die Delphi- in C++-Code oder umgekehrt konvertieren. Aufgrund der sehr unterschiedlichen Sprachfeatures wäre die Implementation eines solchen Tools nahezu unmöglich. Es gibt aber einige Vorstufen zu einem solchen Konverter:
  • Es existieren Tools, die C-Headerdateien (nicht C++!), also nicht C-Programmcode, sondern lediglich das Interface, in Delphi-Units zu konvertieren versuchen. HEADCONV wäre eines, CodeGear hat vermutlich im internen Gebrauch ebenfalls eines. Zumindest HEADCONV ist nicht sehr ausgereift.
  • Der Delphi-Compiler ist in der Lage, das Interface eines Delphi-Units in einer .hpp-Datei für C++Builder zu speichern. Diese Lösung ist, da bereits seit 1997 existent, zu hoher Reife gelangt, bedient sich aber C++Builder-spezifischer Schlüsselwörter (der C++Builder-Compiler wurde zugunsten der Delphi-Kompatibilität wurde um die Schlüsselwörter _fastcall, __classid, __closure, __property und __published, für eine bessere COM-Unterstützung um __automated, __dispid und __uuidof erweitert). Das bedeutet, daß der Code nur mit C++Builder übersetzbar ist und nicht z.B. mit Visual C++ oder dem GCC.
  • Quelltext in einer .NET-Sprache kann meines Wissens recht reibungslos in eine andere übersetzt werden. Benutzt man aber sprachspezifische Spezialisierungen, z.B. die Kompatibilität zum herkömmlichen Delphi in Delphi .NET, LINQ in C# oder die C++/CLI-Spracherweiterungen, so geht auch dies nicht mehr.


In deinem Fall ist es vielleicht ratsam, o.g. Delphi-Komponente zu benutzen. Grundsätzlich aber ist für den Fall, daß du C-, C++- und Delphi-Code in einer Anwendung benötigst, der C++Builder (z.B. in Form des kostenfreien Turbo C++, das du mittels TEMerger mit Turbo Delphi integrieren kannst) die erste Wahl, denn in einem C++Builder-Projekt kannst du C++- und Delphi-Units gemeinsam verwenden. Der Aufruf von C++-Code in Delphi ist aber auch hier nicht ohne Umwege möglich - entweder bastelst du also eine kleine Wrapperfunktion mit C-Interface, die den C++-Code aufruft, oder du schreibst den Teil des Projektes, der die C++-Funktionen benutzt, in C++.
Moritz
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:51 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