作者danielko (蛋尼尔糕)
看板EE_DSnP
标题[问题] reference parameter with default value
时间Fri May 16 18:01:25 2008
因为我想写成recursively call
而default _root是因为不能改adtTest.h那边的code
bool erase(const T& x, BSTreeNode<T>*& subtree = _root)
这样compile不给过
看不懂error message...
说_root不是static member
不知道这跟错误的关连性
请问有什麽alternatives可以解决吗?
感谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.235
※ 编辑: danielko 来自: 140.112.4.235 (05/16 18:02)
1F:推 bnsblue:把BSTree的&拿掉看看 05/16 18:39
2F:→ danielko:可是&才是我的目的耶 XD 05/16 19:17
3F:→ danielko:这样才能直接改parent的child pointer 05/16 19:21
4F:→ danielko:把&拿掉还是一样 orz 05/16 19:31
5F:推 ric2k1:不能把 data member 当作是 default parameter, 05/16 20:20
6F:→ ric2k1:可以这样写: ... subtree = 0) { if (!subtree) subtree = 05/16 20:21
7F:→ ric2k1:_root; ...} 05/16 20:21
8F:→ danielko:谢谢老师 05/17 17:11