我有2个文件,都包括另一个文件,我得到奇怪的错误.
#ifndef NODE_H
#define NODE_H
#include "model.h"
etc....
#endif
#ifndef MODEL_H
#define MODEL_H
#include "Node.h"
etc....
#endif
Run Code Online (Sandbox Code Playgroud)
这是我正在做的事情的示例代码.有人可以向我解释为什么这是不可能的或允许的吗?我应该做些什么才能通过这个问题.
你和之间有一个循环依赖.Node
model
要解决这个问题,而不是......
#include "Node.h"
Run Code Online (Sandbox Code Playgroud)
...在model.h中,转发声明......
class Node;
Run Code Online (Sandbox Code Playgroud)
......这将允许你拥有Node& node;
你的Model
class
.
或相反亦然.
更好的是......看看你是否可以重新审视你的设计并消除这种循环依赖.
归档时间: |
|
查看次数: |
4877 次 |
最近记录: |