因为模板是在编译的时候根据模板参数实例化的,实例化之后就像一个普通的类(函数),这样才有对应的二进制代码;否则,没有模板参数,那么编译器就不知道怎么生成代码,所以生成的DLL就没有办法导出模板了. 关键语句: 分别在EXE和DLL中使用这个声明: template class DECLSPECIFIER TEMPLATE<TYPE>; MSDN上说,从一个实例化模板类集成过来的DLL导出类,就不用再声明了,好像因为在声明这个类的时候编译器已经知道了: class DECLSPECIFIER myInterface : public singleton<myInterface>{} |
07-04
2872

04-01
187

“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交
评论 2



查看更多评论

打赏作者
¥2
¥4
¥6
¥10
¥20
输入1-500的整数



