我现在在将一个类编译成动态库代码结构像下面这样
类A.h
C/C++ code
#include <B.h>
#include <C.h>
class A:public B
{
C c;
}
将其编译成so之后我在main函数中用类A,
C/C++ code
#include <A.h>
int main()
{
A a;
}
但是在编译的时候还要#include <B.h> #include <C.h>才能编译,怎样能使我编译好的A.so在使用的时候只#include <A.h>就可以,而不再需要<B.h> <C.h>。我看到在windows中可以通过com的方法来做封装,使它只需要include A就可以,QT中好像也可以,只是不知道怎么做
------解决方案--------------------
- C/C++ code
#include <B.h> Class C; class A:public B { // 这里改用指针:C c; class C *c; }