3

我正在研究Michael Laszlo 关于计算几何的书,并且对他使用的一种不寻常的模板类构造函数语法感到困惑。

第一个代码

template<class T> class ListNode :public Node{
public:
    T _val;
    ListNode(T val);
    friend class List<T>;
};

template class<T> ListNode::ListNode(T val)  : // shouldn't this be template <class T> ListNode <T>::ListNode(T val)
   _val(val)
{
}

问题

语法不应该是ListNode <T>::ListNode(T val) 代替ListNode ::ListNode(T val)吗?

4

1 回答 1

2

您提供的代码将无法编译。你应该是绝对正确的ListNode<T>::ListNode(T val)(尽管按价值传递是有争议的)。如果你检查这本书的勘误表,你可能会在那里找到这个。

于 2013-05-23T03:10:14.723 回答