C++ 返回对DLL中对象的引用
各位程序员好 我有个奇怪的问题,完全不知道发生了什么 所以我在建一个小图书馆,里面有一些基本的东西,比如数学和一门窗口课 现在来看问题,在我的vec2类中,我想返回一个对对象的引用,但是我得到了这个编译错误“error C2059:syntax error:'u_declspec(dllexport)'”C++ 返回对DLL中对象的引用,c++,dll,visual-studio-2015,dllexport,C++,Dll,Visual Studio 2015,Dllexport,各位程序员好 我有个奇怪的问题,完全不知道发生了什么 所以我在建一个小图书馆,里面有一些基本的东西,比如数学和一门窗口课 现在来看问题,在我的vec2类中,我想返回一个对对象的引用,但是我得到了这个编译错误“error C2059:syntax error:'u_declspec(dllexport)'” FW_API定义为\uu declspec(dllexport) 如果我删除了符号,它编译时不会出现问题,但不会使用它们 因此,在将方法导出到dll时,甚至可以这样做吗?解决方案 类FW_AP
FW_API
定义为\uu declspec(dllexport)
如果我删除了符号,它编译时不会出现问题,但不会使用它们
因此,在将方法导出到dll时,甚至可以这样做吗?解决方案 类FW_API vec2 将uu declspec(dllexport)放在整个类上,而不是单个方法上。您的问题是“&”需要放在
declspec的另一侧:
而不是:
vec2& FW_API rotate(float angle);
应该是:
vec2 FW_API & rotate(float angle);
展示您的类,通常导出类,而不是类的单个函数。创建DLL项目以获取示例。顺便说一句:读一本关于C++的好书,读一读有关“const正确性”的章节。“UlrichEckhardt,谢谢你,我把它拿来工作了。”你应该把答案作为自己的答案来打字。
vec2 FW_API & rotate(float angle);