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

📄 resarrayit.h

📁 这个是我第一次完成的一个简单的3D ALIEN SHOOTING GAME的RESOURCE MANAGER部分,大家可以看看,然后提点意见~THX
💻 H
字号:
// ResArrayIt.h
//

// Author:			Lea Hayes
// Date Created:	10/03/2006
// Date Modified:	10/03/2006

#pragma once

#include "ResListNode.h"
#include "ResArrayHandle.h"


namespace Resources
{


class ResArrayIt : public ResArrayHandle
{
// Construction and deconstruction.
public:
	ResArrayIt(LPRESLISTNODE pNode);
	ResArrayIt(const ResArrayIt &it);
	virtual ~ResArrayIt();

// Properties.
	size_t DistanceFrom(const ResArrayIt &it);

	void Increment(size_t nAmount = 1);
	void Decrement(size_t nAmount = 1);

// Operator overloads.
	ResArrayIt operator+ (size_t nAmount) const;
	ResArrayIt operator- (size_t nAmount) const;

	inline void operator+= (size_t nAmount)
	{
		Increment(nAmount);
	}
	inline void operator-= (size_t nAmount)
	{
		Decrement(nAmount);
	}

	inline size_t operator- (const ResArrayIt &it)
	{
		return DistanceFrom(it);
	}

	inline void operator= (const ResArrayIt &it)
	{
		m_pItem = it.m_pItem;
	}
	inline void operator= (LPRESLISTNODE pNode)
	{
		m_pItem = pNode;
	}

	inline ResArrayIt& operator++ ()
	{
		m_pItem = m_pItem->m_pNext;
		return *this;
	}
	inline ResArrayIt& operator++ (int)
	{
		m_pItem = m_pItem->m_pNext;
		return *this;
	}
	inline ResArrayIt& operator-- ()
	{
		m_pItem = m_pItem->m_pPrev;
		return *this;
	}
	inline ResArrayIt& operator-- (int)
	{
		m_pItem = m_pItem->m_pPrev;
		return *this;
	}

	inline LPRESLISTNODE operator*()
	{
		return m_pItem;
	}
};


}; // namespace Resources

⌨️ 快捷键说明

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