⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 p10_2.cpp

📁 相当丰富的C++源码
💻 CPP
字号:
/*************************************
* p10_2.cpp                          *
*  单向链表的类模板                  *
**************************************/
#include <iostream>
using namespace std;
template <class TYPE>
class ListNode
{
  private:
	TYPE data;
	ListNode * next;
    static ListNode * CurNode;
    static ListNode * head;
  public:
	ListNode():next(NULL)
	{
	    head=CurNode=this;
	}
	ListNode(TYPE NewData):data(NewData),next(NULL)
	{
	}
	void AppendNode(TYPE NewNode);
	void DispList();
	void DelList();
};
template <class TYPE>
ListNode<TYPE> * ListNode<TYPE>::CurNode;
template <class TYPE>
ListNode<TYPE> * ListNode<TYPE>::head;
template <class TYPE>
void ListNode<TYPE>::AppendNode(TYPE NewData)
{
	CurNode->next=new ListNode(NewData);
	CurNode=CurNode->next;
}
template <class TYPE>
void ListNode<TYPE>::DispList()
{
	CurNode=head->next;
	while(CurNode!=NULL)
	{
		cout<<CurNode->data<<endl;
		CurNode=CurNode->next;
	}
}
template <class TYPE>
void ListNode<TYPE>::DelList()
{
	ListNode *q;
    CurNode=head->next;
	while(CurNode!=NULL) 
	{
	       q=CurNode->next;
		   delete CurNode;
		   CurNode=q;
	}
    head->next=NULL;
}
void main()
{
  ListNode<char> CList;
  CList.AppendNode('A');
  CList.AppendNode('B');
  CList.AppendNode('C');
  CList.DispList();
  CList.DelList();
  CList.DispList();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -