C++ typedef问题
大家好,我之前写了个链表的类,然后现在想把nodeType的指针命名位nodeTypePtr,在下面的类里面我就可以直接用nodeTypePtr<Type>,而不是nod...
大家好,我之前写了个链表的类,然后现在想把nodeType的指针命名位nodeTypePtr,在下面的类里面我就可以直接用nodeTypePtr<Type>,而不是nodeType<Type>* 可是我应该怎样写呢,因为我定义template的时候是在template里面的,谢谢大家解答,谢谢
template <class Type>
struct nodeType
{
Type info;
nodeType<Type>* link;
};
template<class Type>
class linkedListIterator
{
private:
nodeType<Type> current;
public:
linkedListIterator();
linkedListIterator(nodeType<Type> *ptr);
Type operator*();
linkedListIterator<Type>operator++();
bool operator==(const linkedListIterator<Type> & right)const;
bool operator!=(const linkedListIterator<Type> & right)const;
};
template<class Type>
class linkedListType
{
private:
int count;
nodeType<Type> *first;
nodeType<Type> *last;
public:
linkedListType();
linkedListType(const linkedListType<Type> & otherList);
~linkedListType();
linkedListType<Type>& operator=(const linkedListType<Type> &);
void initializeList();
bool isEmpty()const;
void print()const;
Type length()const;
void destroyList();
Type front();
Type back();
bool search(const Type & searchItem);
void insertFirst(const Type & newItem);
void insertLast(const Type & newItem);
void deleteNode(const Type & deleteItem);
linkedListIterator<Type> begin();
linkedListIterator<Type> end();
void copyList(const linkedListType<Type>& otherList);
}; 展开
template <class Type>
struct nodeType
{
Type info;
nodeType<Type>* link;
};
template<class Type>
class linkedListIterator
{
private:
nodeType<Type> current;
public:
linkedListIterator();
linkedListIterator(nodeType<Type> *ptr);
Type operator*();
linkedListIterator<Type>operator++();
bool operator==(const linkedListIterator<Type> & right)const;
bool operator!=(const linkedListIterator<Type> & right)const;
};
template<class Type>
class linkedListType
{
private:
int count;
nodeType<Type> *first;
nodeType<Type> *last;
public:
linkedListType();
linkedListType(const linkedListType<Type> & otherList);
~linkedListType();
linkedListType<Type>& operator=(const linkedListType<Type> &);
void initializeList();
bool isEmpty()const;
void print()const;
Type length()const;
void destroyList();
Type front();
Type back();
bool search(const Type & searchItem);
void insertFirst(const Type & newItem);
void insertLast(const Type & newItem);
void deleteNode(const Type & deleteItem);
linkedListIterator<Type> begin();
linkedListIterator<Type> end();
void copyList(const linkedListType<Type>& otherList);
}; 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询