我想将类的一些成员函数导出DLL,可以直接导出成员函数吗,还是一定要导出类?

Charlie_Shu 2010-05-14 09:22:05
我想将类的一些成员函数导出DLL,可以直接导出成员函数吗,还是一定要导出类?
类中的对外接口不多,也就一两个。
...全文
402 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Charlie_Shu 2010-05-14
  • 打赏
  • 举报
回复
我导出接口函数的话,需要在导出的函数中声明类的对象调用需要使用的类函数吗?还是有其他的导出方法

如果一定要用对象调用的话怎么避免内存泄漏呢
ztenv 版主 2010-05-14
  • 打赏
  • 举报
回复
如果是项目需要,那就声明一个接口,然后导出接口就行了;如果成员函数不是很多,还是导出函数比较好;
CSDMAdmimistrator 2010-05-14
  • 打赏
  • 举报
回复
[Quote=引用楼主 chouchou2007 的回复:]
我想将类的一些成员函数导出DLL,可以直接导出成员函数吗,还是一定要导出类?
类中的对外接口不多,也就一两个。
[/Quote]
你可以导出整个类,也可以单独导出某个成员函数
语法是一样的
CSDMAdmimistrator 2010-05-14
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 taodm 的回复:]
珍惜生命,远离扩展dll,只使用纯C接口的标准dll
[/Quote]
你到底有没有用C++开发过真正的项目?
先回去搞清楚啥事扩展DLL再来回帖
导出类的DLL不一定是扩展dll,别连啥是扩展DLL都不清楚就在回帖
大型C++项目里面导出类比比皆是
用到混合语言编程的大型项目不多
如果真的要提供二次开发接口,大部分采用的是COM或者Corba,而不是C API.
别将导出类说成洪水猛兽一样的,整天在这里诲人不倦了
珍惜你的四星荣誉,你的每一个回帖都有可能会影响别人的学习
findcsdn 2010-05-14
  • 打赏
  • 举报
回复
不知道啥是导出类,太菜了。
Charlie_Shu 2010-05-14
  • 打赏
  • 举报
回复
原来扩展DLL这么可怕,我重新考虑下~~吸取大家教训
lqbk2 2010-05-14
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 taodm 的回复:]

珍惜生命,远离扩展dll,只使用纯C接口的标准dll
[/Quote]

如果我四年前看到这句话的话……
唉,悲剧不用再提……
Charlie_Shu 2010-05-14
  • 打赏
  • 举报
回复
我原来是自己又写了一个函数,实例后调用类的成员函数作为导出接口的,但发现无法避免内存泄漏问题。。。但是如果导出类的话一旦需要修改会比较麻烦,怕后期维护会出问题
Charlie_Shu 2010-05-14
  • 打赏
  • 举报
回复
项目需要啊。。。
kim_jinye 2010-05-14
  • 打赏
  • 举报
回复
请问直接导出成员函数后,你怎么调用呢?个人认为当然是导出类了,导出类后实例对象调用,仅供参考。
taodm 2010-05-14
  • 打赏
  • 举报
回复
珍惜生命,远离扩展dll,只使用纯C接口的标准dll
CSDMAdmimistrator 2010-05-14
  • 打赏
  • 举报
回复
我有说C API不好么?
具体情况具体分析,而不是一味地拒绝导出C++类,如果所有模块用相同的编译器开发,导出C++类给其它模块重用是最正常不过的事情
如果产品是基于C++开发的,现在想提供API给别人做二次开发,并且希望支持大部分的语言和编译器做二次开发那提供COM或者CORBA接口也是最正常不过的.你看看IE和Office的二次开发接口吧.甚至有很多产品是同时提供C++ API和COM API的.而很少会出现C++做的产品,只提供C API的
findcsdn 2010-05-14
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 csdmadmimistrator 的回复:]

引用 1 楼 taodm 的回复:
珍惜生命,远离扩展dll,只使用纯C接口的标准dll

你到底有没有用C++开发过真正的项目?
先回去搞清楚啥事扩展DLL再来回帖
导出类的DLL不一定是扩展dll,别连啥是扩展DLL都不清楚就在回帖
大型C++项目里面导出类比比皆是
用到混合语言编程的大型项目不多
如果真的要提供二次开发接口,大部分采用的是COM或者Corba,而不是C AP……
[/Quote]

个人感觉COM还是少用,费劲。 Corba有啥好的???? C的导出函数为啥不能用???

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧