c++ 语法问题 求帮助(c++primer中遇到的--!)
假设我定义了个类,取名为Queue(不是标准库的那个queue),是个类模板。 部分代码如下:
template <class Type> class Queue{ public: Queue():head(0),tail(0){}// default constructor template <class It> Queue(It beg,It end):head(0),tail(0){copy_elems(beg,end);} Queue(const Queue &Q):head(0),tail(0) {copy_elems(Q);} Queue& operator=(const Queue&);//我想在类模板的外部实现它,怎么写? ~Queue(){destroy();} template <class Iter> void assign(Iter beg,Iter end) { destroy(); copy_elems(beg,end); } Type& front(){return head->item;} const Type&front()const {return head->item;} void push(const Type&); void pop(); bool empty()const { return head==0; } private: QueueItem<Type> *head; QueueItem<Type> *tail; void destroy(); void copy_elems(const Queue&); template <class Iter> void copy_elems(Iter,Iter);};