<分区>
我通常看到 C++11 关键字 using
作为类型声明。
我想让共享库 (dll) 的用户可以看到该类型。
所以(对于 Windows)我用 __declspec(dllimport)
导出它。
__declspec(dllimport) using History = std::list<Event>; //this code is wrong
但是我不知道放在哪里。我只得到错误。
<分区>
我通常看到 C++11 关键字 using
作为类型声明。
我想让共享库 (dll) 的用户可以看到该类型。
所以(对于 Windows)我用 __declspec(dllimport)
导出它。
__declspec(dllimport) using History = std::list<Event>; //this code is wrong
但是我不知道放在哪里。我只得到错误。
最佳答案
__declspec(dllimport)
不是类型的一部分,因此您不能将其放在 using
声明中。
一个习惯的做法是:#define IMPORT __declspec(dllimport)
并将IMPORT
放在每个函数原型(prototype)的前面。也可以使用条件编译将 IMPORT
定义为 DLL 中的 __declspec(dllexport)
。
关于c++ - 使用 (c++11) 声明类型时将 __declspec(dllimport) 关键字放在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57808274/