为什么我用宏定义编译出错而不用宏定义就没有问题呢
#ifndef DLL1_API
#else
#define DLL1_API extern "C" _declspec(dllimport)
#endif.cpp中
#define DLL1_API extern "C" _declspec(dllexport)编译提示错误
Compiling...
DLLDload.cpp
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2146: syntax error : missing ';' before identifier 'CAppConfig'
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2146: syntax error : missing ';' before identifier 'CProject'
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2146: syntax error : missing ';' before identifier 'bool'
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
project.cpp
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2146: syntax error : missing ';' before identifier 'CAppConfig'
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2146: syntax error : missing ';' before identifier 'CProject'
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2146: syntax error : missing ';' before identifier 'bool'
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
Generating Code...
执行 cl.exe 时出错.
#ifndef DLL1_API
#else
#define DLL1_API extern "C" _declspec(dllimport)
#endif.cpp中
#define DLL1_API extern "C" _declspec(dllexport)编译提示错误
Compiling...
DLLDload.cpp
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2146: syntax error : missing ';' before identifier 'CAppConfig'
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2146: syntax error : missing ';' before identifier 'CProject'
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2146: syntax error : missing ';' before identifier 'bool'
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
project.cpp
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2146: syntax error : missing ';' before identifier 'CAppConfig'
e:\program_flies\recipe program\dlldload\dlldload.h(40) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2146: syntax error : missing ';' before identifier 'CProject'
e:\program_flies\recipe program\dlldload\dlldload.h(41) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2146: syntax error : missing ';' before identifier 'bool'
e:\program_flies\recipe program\dlldload\dlldload.h(43) : error C2501: 'DLL1_API' : missing storage-class or type specifiers
Generating Code...
执行 cl.exe 时出错.
#ifdef DLL1_API
#define PROJECTNAME extern "C" __declspec(dllexport)
#else
#define PROJECTNAME extern "C" __declspec(dllimport)
#endif.h or .cpp中
#define DLL1_API
PROJECTNAME BOOL InitializeSomething(LPCTSTR lptszTest);
#ifndef DLL1_API
#define DLL1_API extern "C" _declspec(dllexport)
#else
#define DLL1_API extern "C" _declspec(dllimport)
#endif.cpp中包含头文件就行了
#ifndef DLL1_API
#define DLL1_API extern "C" _declspec(dllexport)
#else
#define DLL1_API extern "C" _declspec(dllimport)
#endif.cpp中包含头文件就行了那在头文件的函数前用不用加 DLL1_API 如 DLL1_API bool IsDownLoad()