是否可以定义构造函数的函数指针?

dra*_*vic 3 c++ unix linux design-patterns shared-libraries

我正在使用带有显式链接的共享库(加载共享库dlopen),以便在C++中实现插件模式.

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

干杯

BЈо*_*вић 6

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

对于dlopen,您需要提供具有c链接的函数并动态加载它,您可以使用它来创建对象,还需要另一个函数来删除对象.

更多关于它的信息