我无法理解一些 C++ 概念。
什么时候使用成员指针和成员变量比较合适?
假设我有一个树结构,因此有一个Node
类。我的直觉是为其Data
and使用一个变量Edge
(因为Node
“拥有” the Data
)和一个指向 parent 的指针Node
。它是否正确?
class Node {
public:
Data data;
Edge edge;
Node *parent;
}
当我为类实现自定义创建者方法时Node
,我还必须初始化成员变量(但不是指针?)。对于根Node
,我可以将父指针设置为NULL
.
但是我该怎么处理这个Edge
变量?根Node
没有父级,也没有Edge
从其父级指向它。我可以以某种方式将其设置为“零”值吗?如果重要的话,Edge
该类没有默认构造函数,而是像这样:Edge(int length, int width)
.