C++ 关于类的引用有关问题 文件包含和类的声明
C++ 关于类的引用问题 文件包含和类的声明
比如有下列两个文件
//A.h
class A
{
public:
......
}
//B.h
#include "A.h "
class B
{
public:
A *p;
......
}
问题:一般情况下 A *p;这句没错误,奇怪的是 怎么有时候在B.h文件中 A *p;这句会报错
如果在类前面加上 class A;
即:
//B.h
#include "A.h "
class A;
class B
{
public:
A *p;
......
}
那么就可以引用A类, A *p;正确
这是怎么回事啊
关于调用另外一个文件的类,还请各位给解释下
------解决方案--------------------
#include "A.h "
class B
{
public:
A *p;
......
}
这样也会报错?
------解决方案--------------------
不理解,应该是不用加的,报什么错?类型没定义?
------解决方案--------------------
难道又是传说中的bug.
比如有下列两个文件
//A.h
class A
{
public:
......
}
//B.h
#include "A.h "
class B
{
public:
A *p;
......
}
问题:一般情况下 A *p;这句没错误,奇怪的是 怎么有时候在B.h文件中 A *p;这句会报错
如果在类前面加上 class A;
即:
//B.h
#include "A.h "
class A;
class B
{
public:
A *p;
......
}
那么就可以引用A类, A *p;正确
这是怎么回事啊
关于调用另外一个文件的类,还请各位给解释下
------解决方案--------------------
#include "A.h "
class B
{
public:
A *p;
......
}
这样也会报错?
------解决方案--------------------
不理解,应该是不用加的,报什么错?类型没定义?
------解决方案--------------------
难道又是传说中的bug.