C++未定义的基类
C++ base class undefined
我在每个头文件中创建了类"对象"和"矢量"。 ("对象"是"矢量"的父类( 并制作了包含两个类头文件的"Engine.h"头文件。
构建成功。 但是,如果我创建空的"对象.cpp"文件,则会出现错误。 像这样 'Vector.h(7,2(:错误 C2504:"对象":基类未定义">
你能告诉我为什么"对象.cpp"文件会出现此错误吗?
//Engine.h
#pragma once
#include "Object.h"
#include "Vector.h"
namespace Engine
{
}
//Object.h
#pragma once
#include "Engine.h"
namespace Engine
{
class Object
{
};
}
//Vector.h
#pragma once
#include "Engine.h"
namespace Engine
{
class Vector : public Object
{
};
}
#include <iostream>
#include "Engine.h"
int main()
{
return 0;
}
你忘了在 Vector.h 文件中#include "Object.h"
。
看起来很多类都相互依赖 - 这有点代码气味,并且由于您有循环include
语句而导致编译器错误。如果Engine
包含Object
而Object
包含Engine
,则无法编译 - 其中一个总是未定义的。
相关文章:
- 使用子类覆盖基类中定义的函数
- 如何在基类中定义静态接口,并确保该接口必须在派生类中实现
- Qt基类函数定义
- 当在基类中定义枚举时,qml中的Q_ENUM未定义值
- 基类未定义.错误 C2504
- 将 final 关键字添加到没有基类(未派生)的类中的虚函数是否有意义
- 从派生类重新定义基类中定义的结构
- C++头文件错误:基类未定义
- IMFSourCereadErcallback:基类未定义
- 类类型重定义和基类未定义错误
- C 中的基类未定义错误
- 错误C2504-基类未定义
- 从c++中的派生类调用未在基类上定义的成员函数是否安全
- 基类未定义的 Visual Studio 2010
- 'class'类型重定义/基类未定义
- 如何仅在派生类未定义同名方法时才定义基方法
- 基类未定义
- 基类未定义错误(C2504)
- 需要快速帮助,基类未定义
- c++基类未定义.在另一个类中包括基类和子类