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

📄 cstack.h

📁 PGP8.0源码 请认真阅读您的文件包然后写出其具体功能
💻 H
字号:
/*____________________________________________________________________________
		Copyright (C) 2002 PGP Corporation
        All rights reserved.

        $Id: CStack.h,v 1.3 2002/08/06 20:10:37 dallen Exp $
____________________________________________________________________________*/

#ifndef Included_CStack_h	// [
#define Included_CStack_h

#include "pgpClassesConfig.h"
#include "CList.h"

_PGP_BEGIN

// Class CStack

template <typename T, bool e = PGP_EXCEPTIONS> class CStack
{
	NOT_COPYABLE(CStack)

public:
	CStack() { }
	~CStack() { }

	PGPUInt32	Size() const {return mList.Count();}

	void	Push(T *pItem);
	T *		Pop();

	void	Empty() {mList.Empty();}
	void	EmptyWithDelete() {mList.EmptyWithDelete();}

private:
	CList<T>	mList;
};

// Class CStack template member functions.

template <typename T, bool e>
void 
CStack<T, e>::Push(T *pItem)
{
	mList.AddHead(pItem);
}

template <typename T, bool e >
T * 
CStack<T, e>::Pop()
{
	if (Size() == 0)
		return NULL;
	else
		return mList.Remove(mList.Head());
}

_PGP_END

#endif	// ] Included_CStack_h

⌨️ 快捷键说明

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