Welche Sparachen kann man mit C++ kombinieren? (extern "...")
-
Der Standard sagt lediglich "C".
Es gibt allerdings Compiler-spezifische Erweiterungen.
-
Jede Sprache, die Objektdateien erzeugen kann, die dein Linker zusammenfügen und deren Abhängigkeiten auflösen kann.
Das extern "C" ist nur ein Befehl an den Linker, dass er die Namensbildung der Funktionen nach C Manier gestaltet.
Unter .net Umgebung sah es noch etwas anders aus, kann ich aber nix weiter zu sagen.
-
Ach so, denn ich hatte in den VC7.1 Libraries aufenweise externe API Funktionen im Stile von...
extern "pascal" void TuIrgendwas(const char*);...entdeckt und wollte da dann doch mal wissen was für Sprachen man noch alles so nehmen kann.
Danke für die Antworten.
//EDIT: Plural...
-
Das da ist auch nur eine Aufrufkonvention. (Wie beim Funktionsaufruf auf den Stack gepusht werden soll).
Also eben im 'Pascal' Stil. Kann aber trotzdem in C++ geschrieben sein, die Funktion.
-
Habs auch schon mit "fortran" gesehen, wenn ich mich nicht irre.
-
Und Java beim g++ glaub ich. Ich würde mal darauf tippen, dass der GCC die meisten verschiedenen unterstützt.
PS: Macht es eigentlich einen Unterschied ob "C" oder "c"?
-
Ob das auch mit Delphi geht würd mich mal interessieren, hab ich bald vieleicht im Untericht.

//EDIT: Mit Java, sicher? Der "Compiler" erzeugt doch Bytecode.
-
roan312 schrieb:
Ob das auch mit Delphi geht würd mich mal interessieren, hab ich bald vieleicht im Untericht.

Ja, Delphi kann für C und C++ Libraries erstellen.
Aber warscheinlich gehen die Libs dann nur mit dem Borland Builder.
-
Danke, ist erstmal gut zu wissen.
Aber was hat das mit dem Borland Compiler zu tun?
-
Hallo
weniger mit dem Borland Compiler als mit der VCL. Die ist eine Umsetzung der Delphi-Komponenten mit C++Mitteln. Deshalb die Enge Bindung an Pascal. Aber du kannst mit dem Builder keine Delphi-Projekte machen
bis bald
akari
-
roan312 schrieb:
//EDIT: Mit Java, sicher? Der "Compiler" erzeugt doch Bytecode.
Der GCC kann auch Java in native Code verwandeln.