【发布时间】:2018-07-30 04:40:38
【问题描述】:
起草一个项目,我发现在main.cpp 文件中创建相互引用的结构最简单,如下所示:
struct component;
struct vertex{
component * parent;
...;
}
struct component{
vector<vertex *> vertices;
...;
}
在我开始将这些结构的最终版本编码为头文件中的类之前,这是公认的方法吗?
或者有没有一种方法可以“假定”创建相互引用的结构/类?
【问题讨论】:
-
将它们放在头文件中而不是 C++ 文件中。使您的头文件自包含。例如,由于您使用的是
vector,因此您的标题中将有一个#include <vector>。但是,NOT 是否有using namespace std;- 使用完全限定(例如,std::vector< ... >代替。 -
@HappyGreenKidNaps 哈哈,是的,遇到了那个特殊问题...感谢您的提醒。