DLL中两个类,相同函数名怎么调用区分?

亭台六七座 2019-12-19 06:12:34

class Class1
{
public:
MyClass();
~MyClass();

add(int a, int b) {
return (a + b);
};
};

class Class2
{
public:
Class2();
~Class2();

add(int a, int b) {
return (a * b) + (a / b);
};
};


各位大佬,我想把这两个类放到同一个DLL里面,在调用该DLL时如何区分呢?
...全文
166 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
古勰麟 2020-04-08
  • 打赏
  • 举报
回复
不太懂 这个不是加类名就可以了吗 实例化的时候 对象的类也只有一个吧
星光伴月 2019-12-19
  • 打赏
  • 举报
回复
在DLL 中导出这两个类的话,用类名就可以区分的:

Class1 class1;
Class2 class2;
class1.add(5,3); //调用Class1的add函数
class2.add(2,5); //调用Class2的add函数
寻开心 2019-12-19
  • 打赏
  • 举报
回复
LoadLibrary加载dll
GetProcAddress()加载指定的函数,把函数给予你自己定义的函数指针, 这样就可以了
不同dll的同名函数,因为来自不同的LoadLibrary,加载指定的函数后,可以赋值给不同的函数指针
寻开心 2019-12-19
  • 打赏
  • 举报
回复
用LoadLibrary可以啊, 加载后可以给指定的名字的函数,然后赋于不同的函数指针
铖邑 2019-12-19
  • 打赏
  • 举报
回复
用LoadLibrary吗?不可以的

64,654

社区成员

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

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