类 TESTDLL_LIBSHARED_EXPORT TestDLL_lib
Posted
技术标签:
【中文标题】类 TESTDLL_LIBSHARED_EXPORT TestDLL_lib【英文标题】:class TESTDLL_LIBSHARED_EXPORT TestDLL_lib 【发布时间】:2016-03-10 22:23:52 【问题描述】:我从QLibrary
开始,在这种情况下,我遇到了堆栈溢出问题"QLibrary - import a class"。我有一个关于这个问题的问题:
类声明中TESTDLL_LIBSHARED_EXPORT
是什么意思?
class TESTDLL_LIBSHARED_EXPORT TestDLL_lib
public:
TestDLL_lib();
int a;
int b;
int c;
int getValues();
;
【问题讨论】:
请参考***.com/questions/4555961/how-to-use-a-class-in-dll。求答案 我看到微软在那个问题中提到了。它特定于 Microsoft 编译器吗?我在 Windows 上使用 Qt/MinGW。 哦,我想现在我明白了,它一定是 `__declspec(dllexport)` 的宏,对吧? 【参考方案1】:详细答案请参考How to use a class in DLL?。
您可以导出数据、函数、类或类成员函数 从 DLL 使用 __declspec(dllexport) 关键字。 __declspec(dllexport) 将导出指令添加到目标文件,因此您不需要使用 .def 文件。导出所有公共数据 类中的成员和成员函数,关键字必须出现 左边的类名如下:
class TESTDLL_LIBSHARED_EXPORT TestDLL_lib
【讨论】:
以上是关于类 TESTDLL_LIBSHARED_EXPORT TestDLL_lib的主要内容,如果未能解决你的问题,请参考以下文章
JavaSE基础(十 三 )---<内部类>成员内部类,静态内部类,局部内部类,匿名内部类,内部类的意义