gpt4 book ai didi

c++ - 需要快速帮助 基类未定义

转载 作者:行者123 更新时间:2023-12-03 12:50:29 25 4
gpt4 key购买 nike

无法在任何地方找到解决方案

这是我的文件布局

SDK.h

#pragma once
#include "Object.h"
#include "Panel.h"

对象.H

#pragma once
#include "SDK.h"

class BaseObject
{
etc...
}

面板.h

#pragma once
#include "SDK.h"

class Panel : public BaseObject
{
etc...
}

然后出现错误

Panel.h(5): error C2504: 'BaseObject' : base class undefined

有人可以告诉我如何正确地做到这一点吗?这可能是一个非常简单的修复:(

编辑:我查看了但无法解决它,我是否必须创建一个新文件并将它们包含在 .CPP 文件中?

最佳答案

您没有包含有关翻译单元无法编译代码的任何信息。因此,我在猜测。我的猜测是您首先有一些包含 Object.h 的内容:

  • 编译器开始包含 Object.h 并将其标记为不再包含
  • 编译器包含 SDK.h,暂停包含 Object.h 并将其标记为不再包含
  • 跳过 Object.h 的包含
  • 编译器包含 Panel.h,暂停包含 SDK.h 并将其标记为不再包含
  • 跳过 SDK.h 的包含
  • 已达到 Panel 的定义,但 BaseObject 尚未定义,并且您收到错误

修复方法是不包含来自 Object.hPanel.hSDK.h。相反,Panel.h 应包含 Object.h,并且两个 header 都应包含它们需要的其他内容。

关于c++ - 需要快速帮助 基类未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32291064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com