gpt4 book ai didi

C++类,其基类和循环包含

转载 作者:太空宇宙 更新时间:2023-11-04 14:46:34 26 4
gpt4 key购买 nike

<分区>

文件#1(foo.h):

#ifndef FOO_H_
#define FOO_H_
#include "baseclass.h"
#include "bar.h"
class Bar;
class Foo : public baseclass {
public:
bar *varBar;
};
#endif

文件#2(bar.h):

#ifndef BAR_H_
#define BAR_H_
#include "foo.h"
class Foo;
class Bar {
public:
Foo *varFoo;
};
#endif

文件#3(baseclass.h):

#ifndef BASECLASS_H_
#define BASECLASS_H_
#include "foo.h"
class Foo;
class baseclass {
public:
list<Foo*> L;
};
#endif

但是我在文件 #1 的 class Foo : public baseclass 行中得到一个编译错误:

Error: expected class-name before »{« token

如果我添加 class baseclass; bevor class declaration,我会得到这个错误:

Error: invalid use of incomplete type »struct baseclass«

所以我的问题是,如何解决与基类的循环依赖?

问问你是否没有得到一点。我已经尝试更改包含标题的顺序,但到目前为止还没有成功。感谢您的任何提示。

编辑:注意:我正在使用包含守卫EDIT2:它不限于指针,所以我删除它们以防万一。EDIT3:添加基类(忘了O.o)EDIT4:现在应该很清楚了,没有任何缺陷,问题仍然存在于这段代码中。

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