【发布时间】:2011-03-17 20:21:14
【问题描述】:
我正在尝试编写一个复制构造函数,它接受四叉树的一个节点,并复制该节点及其所有子节点及其子节点,等等。这是我所拥有的:
Node(const Node & n) {
nChild=new Node(*(n.nwChild));
neChild=new Node(*(n.nChild));
eChild=new Node(*(n.seChild));
wChild=new Node(*(n.sChild));
}
我觉得最后 4 行有点时髦。我所做的有意义吗?
【问题讨论】:
-
如果
n.??Child之一是NULLmethinks,那么该代码将会崩溃。 -
但它不检查吗?
-
只有当
??Child成员中的所有个成员都是NULL时,如果你想返回其中任何一个是NULL你,你的复制构造函数才会过早返回需要使用||运算符。 -
-1 你昨天问了一个问题:stackoverflow.com/questions/5332811/…。您可以(并且应该)在此处添加示例代码,而不是将其作为新问题发布在此处。
标签: c++ constructor