extern "C" funktion in C++ Klasse
-
Hallo,
ich habe eine klasse einer MFC DLL aus der ich eine Funktion exportieren muss.
Diese muss aber gemäß den vorgaben wie folgt deklariert sein:extern "C" __declspec(dllexport) int SomeFunction(int);Das extern "C" bereitet mir hierbei massiv probleme:
ich bekomme hierbei für diese zeile den Compilerfehler:
dllproj.h(9) : error C2059: syntax error : 'string'
Ich nehme an das es an dem "C" liegen muss aber ich komm nicht darauf wie ich es dem Compiler beibringen soll

Hat jemand einen Tipp für mich?
Danke!
-
Zeig mal bitte en bisschen Code (Definition und Aufruf).
-
class Foo { ... public: extern "C" __declspec(dllexport) int SomeFunction(int); ... };Es handelt sich hierbei um eine Reguläre DLL statisch gelinkt.
Implementation:
extern "C" __declspec(dllexport) int SomeFunction(int x) { //do something }Dank dir mal wenn du noch was brauchst dann geb mir grad bescheid

-
Hallo
Klassen und C-Interface widersprechen sich schon per Definition.
Emntweder hast du ein reines C-Interface, oder du hast ein C++ Interface mit Klassen, das aber dann Compiler-spezifisch ist.bis bald
akari