linux下实现了一个共享库,在里面导出一个类A。
class EXPORT A
{
public:
void outputA();
};
void A::outputA()
{
printf("A");
}
另外做一个程序调用共享库,并实现另一个类B,B继承A,扩展A的功能,但是调用A的接口编译不通过。
class B:public A
{
public:
void outputB();
}
B::outputB()
{
outputA();
printf("B");
}
main()
{
B obj;
obj.outputA();
obj.outputB();
}
这在WINDOWS下是没有问题的。
求教大牛们,这个问题应该怎么解决。
linux 下的 so 不能导出类。这个渣渣的系统啊。
想导出类还得用个虚基类头文件,在so里分配个子类的对象导出地址来强转。
但是如果我想在外部继承和扩充怎么办呢?
原来可以导出类,只是不能导出类的加了inline的成员函数。