怎样导出自建类的函数??
我头一次编dll的程序,请各位大人多指教。
我用mfc建了一个regular dll,在里面自建了一个类,我想导出自建类的函数如何做呢??
问题点数:50、回复次数:7Top
1 楼xujinbaobao(新手)回复于 2003-12-01 16:42:05 得分 0
没人知道吗??
我在def文件中添加了要导出的函数,可是编译不能通过,提示:unresolved external symbol Open()Top
2 楼spark_zh()回复于 2003-12-01 17:09:20 得分 20
不能导出类的函数,要么导出标准函数,或者导出整个类。
要导出类要用第三种动态库。
Top
3 楼bluebohe(薄荷)回复于 2003-12-01 17:18:09 得分 30
导出类很简单的
在你的DLL中Alt+F7中有一个C/C++中preprocessor definitions编辑框添加AAA_EXPORTS定义,然后在头文件类定义之前添加
#ifdef AAA_EXPORTS
#define AAA_API __declspec(dllexport)
#else
#define AAA_API __declspec(dllimport)
#endif
然后在你的类的声明前添加AAA_API ,就象上面一样,在主工程中包括这个头文件,主工程中在ALT+F7的LINK选项卡添加该DLL的.LIB文件。OK
Top
4 楼xujinbaobao(新手)回复于 2003-12-02 09:29:03 得分 0
为什么不能导出函数,我看书中的例子可以导出呀,只不过它导出的是WinApp类中的函数。Top
5 楼spark_zh()回复于 2003-12-02 10:10:00 得分 0
你再看看,是单独的函数吧。
想想,光导出一个类的函数?类的方法脱离了类还有什么用?Top
6 楼xujinbaobao(新手)回复于 2003-12-02 10:53:47 得分 0
谢谢楼上的各位,我现在把类导出了,可是在主工程中怎么调用此类中的函数呢??
我直接调用或用类指针调用都有错误。Top
7 楼bluebohe(薄荷)回复于 2003-12-02 11:03:40 得分 0
如果是静态成员函数的话,用类的::调用,否则用对象的.调用啊!Top




