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

📄 stack.h

📁 计算机器程序~ 附带词法分析~
💻 H
字号:
/**/
template<class T>
class CStack  
{
public:
	CStack()
	{
		Head = new Node;
		Head->Next = NULL;
	}


	void Push(T data)
	{
		Node* tem;
		tem = Head->Next;
		Head->Next = new Node;
		Head->Next->Next = tem;
		Head->Next->Data = data;
	}
	


	BOOL Pop(T& data)
	{
		if(Head->Next)
		{
			data = Head->Next->Data;
			Node* tem = Head->Next->Next;
			delete Head->Next;
			Head->Next = tem;
			return TRUE;
		}
		else
			return FALSE;
	}

	BOOL GetTop(T& data)
	{
		if(Head->Next)
		{
			data = Head->Next->Data;
			return TRUE;
		}
		return FALSE;
	}

	virtual ~CStack()
	{
		Node* pNode = Head;
		Node* tem;
		while(pNode)
		{
			tem = pNode->Next;
			delete pNode;
			pNode = tem;
		}
	}


protected:
	struct Node
	{
		T Data;
		Node* Next;
	};

	Node* Head;

};

⌨️ 快捷键说明

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