一、错误
Qt报错:XXX does not name a type
二、报错原因
在两个类的头文件中,相互引用了对方的头文件
例如:
//a.h
#include "b.h"
class AClass
{
AClass();
private:
BClass b;
}
//b.h
#include "a.h"
class BClass
{
BClass();
private:
AClass a;
}
三、解决办法
a.h文件修改为:
//a.h
#include <QApplication>
class BClass;
class AClass
{
AClass();
private:
BClass a;
然后在a.cpp里面添加:
//a.cpp
#include "b.h"
同理,b.h也修改为这样:
//b.h
#include <QApplication>
class AClass;
class BClass
{
BClass();
private:
AClass a;
}
在b.cpp中包含a.h:
//b.cpp
#include "a.h"
版权声明:本文为qq_41176921原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。