Ich muss eine DLL mit einer Funktion in C++ erstellen. Ich habe das Projekt erstellt, indem ich DLL ausgewählt habe, und ich habe das Standardbeispiel verwendet, das am Anfang automatisch erstellt wurde.Fehler beim Kompilieren einer DLL in Visual Studio
I edited 2-Dateien:
OCR2.h
using namespace std;
#ifdef OCR2_EXPORTS
#define OCR2_API __declspec(dllexport)
#else
#define OCR2_API __declspec(dllimport)
#endif
// Cette classe est exportée de OCR2.dll
class OCR2_API COCR2 {
public:
COCR2(void);
// TODO: ajoutez ici vos méthodes.
};
extern OCR2_API int nOCR2;
OCR2_API int fnOCR2(void);
OCR2_API bool comparer(bool latin, string lienInitial, string lienStr1, string lienStr2, string lienStr3);
Und mein OCR2.cpp
#include <sstream>
#include <string>
#include <iostream>
#include <cstring>
#include <fstream>
using namespace std;
// Il s'agit d'un exemple de variable exportée
OCR2_API int nOCR2=0;
// Il s'agit d'un exemple de fonction exportée.
OCR2_API int fnOCR2(void)
{
return 42;
}
OCR2_API bool comparer(bool latin, string lienInitial, string lienStr1, string lienStr2, string lienStr3)
{
// my function
}
COCR2::COCR2()
{
return;
}
Während das Projekt Bau, ich den Fehler C2061 haben in Visual Studio 2015 mit der Beschreibung:
"erreur de syntaxe: identificateur 'string'"
Welche „Syntaxfehler bedeutet: identifizierbare 'string'.
Ich möchte wissen, ob die Art und Weise, die ich verwendet habe, um die DLL zu erstellen, korrekt ist, wenn ja, warum habe ich diesen Fehler beim Erstellen?
Danke
Fügen Sie '#include" ocr2.h "' zur Liste von #includes hinzu. –
'OCR2.cpp' enthält nicht 'OCR2.h'. Der Header enthält nicht 'std :: string'. 'using namespace std;' ist eine schlechte Übung. –