Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 移植到Linux错误:在‘;之前应为初始值设定项:’;代币_C++_Linux_Porting - Fatal编程技术网

C++ 移植到Linux错误:在‘;之前应为初始值设定项:’;代币

C++ 移植到Linux错误:在‘;之前应为初始值设定项:’;代币,c++,linux,porting,C++,Linux,Porting,嗯,我有课 class DLL_LIB a: public b { } 海湾合作委员会说 “:”标记之前应为初始值设定项 我不明白为什么。也许这是链接DLL库的问题,但我这样做了: #ifdef _WIN32 #define DLL_LIB __declspec(dllexport) #else #define DLL_LIB __declspec(dllimport) #endif 虽然我做了假DLL库,但我无法避免“预期初始值设定项”的错误 多谢各位 您对DLL_LIB的定义是错误的。

嗯,我有课

class DLL_LIB a: public b
{

}
海湾合作委员会说

“:”标记之前应为初始值设定项

我不明白为什么。也许这是链接DLL库的问题,但我这样做了:

#ifdef _WIN32
#define DLL_LIB __declspec(dllexport)
#else
#define DLL_LIB __declspec(dllimport)
#endif
虽然我做了假DLL库,但我无法避免“预期初始值设定项”的错误


多谢各位

您对
DLL_LIB
的定义是错误的。应该是这样的:

#ifdef _WIN32
  #ifdef BUILDING_DLL_LIB
    #define DLL_LIB __declspec(dllexport)
  #else
    #define DLL_LIB __declspec(dllimport)
  #endif
#else
  #define DLL_LIB
#endif
本练习的目的如下:

在Windows上,您需要区分“符号从此DLL导出”(由
\uu declspec(dllexport)
表示,并且在构建DLL时必须存在)和“符号从DLL导入”(由
\uu declspec(dlliport)
表示,并且在链接DLL的程序中包含标头时必须存在)


在Linux上,没有这样的东西,因此必须由预处理器从头中删除宏-因此将其定义为空。

您对
DLL_LIB
的定义是错误的。应该是这样的:

#ifdef _WIN32
  #ifdef BUILDING_DLL_LIB
    #define DLL_LIB __declspec(dllexport)
  #else
    #define DLL_LIB __declspec(dllimport)
  #endif
#else
  #define DLL_LIB
#endif
本练习的目的如下:

在Windows上,您需要区分“符号从此DLL导出”(由
\uu declspec(dllexport)
表示,并且在构建DLL时必须存在)和“符号从DLL导入”(由
\uu declspec(dlliport)
表示,并且在链接DLL的程序中包含标头时必须存在)


在Linux上,没有这样的东西,因此必须由预处理器从标头中删除宏-因此将其定义为空。

您使用的是MS特定关键字您使用的是MS特定关键字