首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

dll里面的类,不使用_declspec(dllexport)也能让外面的exe使用啊解决办法

2012-05-21 
dll里面的类,不使用__declspec(dllexport)也能让外面的exe使用啊.通常总是说,dll的类型要用__declspec(exp

dll里面的类,不使用__declspec(dllexport)也能让外面的exe使用啊.
通常总是说,dll的类型要用__declspec(export)声明,使用dll的exe里面再次用__declspec(import)。

可是我发现不加这个关键字也可以啊,只要exe的工程包含了头文件,工程里面包含了dll的lib文件,调用dll的exe编译就能通过,运行也没有问题。

那么这个__declspec到底什么时候才是一个导出类所必要的?

谢谢!

[解决办法]
在函数前面加exturn "C"
[解决办法]
如果是导出类在dll中:class _declspec(dllexport) CA
在外部引用dll中类的头文件要保证:class _declspec(dllimport) CA
明白没?
[解决办法]
如果DLL中没有加_declspec(dllexport)或定义导出文件,外面是不可以调的
[解决办法]
楼主多测试几次,你的情况可能是添加了模块定义文件 xxx.def
导出接口函数的方法通常两种:

1.在函数声明出添加_declspec(dllexport)修饰
2.使用def文件
[解决办法]
这个要多测试啊
[解决办法]
呵呵,不是def的问题,楼主肯定是都写成默认inline了,即在class声明函数时都写出了实现。 实际上楼主写的类并未导出,而是基于源码的复用。

[解决办法]
gcc?

热点排行