cqueue.h

来自「可以实现对邮件的加密解密以及签名」· C头文件 代码 · 共 60 行

H
60
字号
/*____________________________________________________________________________
		Copyright (C) 2002 PGP Corporation
        All rights reserved.

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

#ifndef Included_CQueue_h	// [
#define Included_CQueue_h

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

_PGP_BEGIN

// Class CQueue

template <typename T> class CQueue
{
	NOT_COPYABLE(CQueue)

public:
	CQueue() { }
	~CQueue() { }

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

	void	Enqueue(T *pItem);
	T *		Dequeue();

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

private:
	CList<T>	mList;
};

// Class CQueue template member functions.

template <typename T>
void 
CQueue<T>::Enqueue(T *pItem)
{
	mList.AddTail(pItem);
}

template <typename T >
T * 
CQueue<T>::Dequeue()
{
	if (Size() == 0)
		return NULL;
	else
		return mList.Remove(mList.Head());
}

_PGP_END

#endif	// ] Included_CQueue_h

⌨️ 快捷键说明

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