gpt4 book ai didi

c++ - 多个文件包含到单个类冲突

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:59:43 24 4
gpt4 key购买 nike

这里是问题的设置:

  1. MainFile.c调用文件SubFileA.h和SubFileB.h
  2. SubFileA.h需要调用类SigleClass.h
  3. SubFileB.h也需要调用类SingleClass.h

文件内容如下。

MainFile.h 包含以下几行:

#include "SubFileA.h"
#include "SubFileB.h"
...



SubFileA.h 包含以下几行:

#include "SingleClass.h"
...
void InsertPendingRejectedTrx(SingleClass oLogic);
...



SubFileB.h 包含以下几行:

#include "SingleClass.h"
...
void InsertPendingRejectedTrx(SingleClass oAnotherLogic); //line 52
...



SingleClass.h 文件包含以下几行:

#ifndef SC_LOGIC
#define SC_LOGIC
...
[lots of codes]
...
#endif




错误代码如下:

SubFileB.h: At global scope:
SubFileB.h:52: error: âSingleClassâ has not been declared



当我尝试编译时,编译器返回错误。它说从 SubFileB 中,不包括“SingleClass”。我该如何解决这个问题?
注意:代码之前已经可以运行了,但是当我出于某些原因从 SubFileB.h 中包含 SingleClass 时,编译器返回了一个错误。

最佳答案

你需要集中你的头文件,创建一个头文件并将你的头文件包含在你给定的文件中。squid 缓存服务器使用相同的算法,当然,你应该优先使用#include 指令,因为它们依赖在一起。

关于c++ - 多个文件包含到单个类冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10792965/

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