Joa*_*m W 5 c++ windows dll global-variables cmake
将 CMake 下的 C++ 库移植到 Windows。
__declspec(dllexport).set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)。我们选择选项 2,因为它看起来更容易,并且保持我们的来源完整。工作起来就像一个魅力:我们的应用程序编译并与库 dll 链接。
但是,它仅确保类和函数的导出。导出全局变量需要做什么?像:
lib_source.cpp:
int my_secret;
app.cpp:
extern int my_secret;
Run Code Online (Sandbox Code Playgroud)
对于全局数据符号,
__declspec(dllimport)在针对 .dll 中的代码进行编译时仍必须使用。
源代码: https: //cmake.org/cmake/help/latest/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.html