在下面的代碼中Node_T
是std::shared_ptr
,element_type
將是Node< T,U >
,並且此類型的成員名爲root_
;縮短嵌套變量名稱
有沒有辦法縮短這個:Node_T::element_type::root_
只是root_
?
template<class Node_T>
const Node_T& root(Node_T& node)
{
Node_T::element_type::root_ = node;
while (Node_T::element_type::root_->parent_)
{
Node_T::element_type::root_ = Node_T::element_type::root_->parent_;
}
return Node_T::element_type::root_;
}
你不是在這裏錯過了幾個'typename'嗎? – Puppy
@DeadMG好了,root_不是一個類型名稱,我相信typename是爲了表明::右邊的是一個類型,所以我不確定在這種情況下element_type是否需要typename? – smallB