微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否有可能定义一个函数指针到一个构造函数?

我正在使用显式链接共享库(加载与dlopen共享库)以实现插件模式在C + +。

是否有可能定义一个函数指针到共享库中定义的类的构造函数,或者我将不得不在共享库中定义工厂方法,从共享库实例化(和初始化)一个类的对象? 当然,在我的主应用程序中,我将定义一个指向工厂方法函数指针,该方法将返回我需要的类的一个实例。

干杯

无法链接应用程序与mudflap

运行./configure for vlc时找不到libavcodec

如何使用waf来构build共享库?

一个关于loader如何在运行时定位库的问题

在Linux上制作可移植的专有ELF二进制文件

在Linux的哪个库中是系统调用的,这个库如何链接到包含系统调用的可执行对象文件

GCC选项的共享和-WI共享区别

使用JNI加载一个dynamicC共享库,同时加载另一个共享库

为什么我得到未定义的参考pthread_mutexattr_settype?

我可以在Redhat Linux机器上使用在Ubuntu上编译的共享库吗?

这个问题的答案是否定的,你不能定义一个成员或函数指针给构造函数

对于dlopen,你需要提供一个带有c链接函数,并动态地加载它,你可以用它来创建这些对象,还需要另一个函数删除对象。

更多关于这里

在使用dlsym()获取指针时,您需要知道名称重叠的问题。 依靠一些特定的破坏方法并不是一个好主意,它们都太多样了。 所以唯一合理的做法是将你的插件接口公开为extern“C”{…},在构造函数中使用工厂函数包装器。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐