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

📄 array.h

📁 墨香最新私服
💻 H
字号:
// Array.h: interface for the CArray class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_ARRAY_H__4B90A0FC_7328_49B8_97A9_CB29434FF05A__INCLUDED_)
#define AFX_ARRAY_H__4B90A0FC_7328_49B8_97A9_CB29434FF05A__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

template <class T>
class CArray  
{
	int MaxDataCount;	// ¹è¿­Å©±â
	T TempData;			// À߸øµÈ ¹è¿­ÀÎÀÚ°¡ µé¾î¿ÔÀ»¶§ ³Ñ°ÜÁÙ °ª
	T* pData;			// ½ÇÁ¦ µ¥ÀÌŸ
public:
	CArray()
	{
		MaxDataCount = 0;
		pData = 0;
		memset(&TempData,0,sizeof(T));
		// memsetÀ» Çϱ⶧¹®¿¡ ±¸Á¶Ã¼³ª ½ºÆ®·°Ãİ¡ Á¦ÇÑÀûÀÌ´Ù. ¹æ½ÄÀ» ¹Ù²Ù¸é µÉµíµµ Çѵ¥..
	}
	~CArray()
	{
		if(pData)
			delete [] pData;
	}
	void Allocate(int count)		// ÇÒ´çÇÑ´Ù.
	{
		if(pData)
		{
			delete [] pData;
		}
		MaxDataCount = count;
		pData = new T[count];
	}
	T& GetData(int n)
	{
		if(n<0 || n>=MaxDataCount)
		{
			// ¿¡·¯ ó¸®.... ·Î±×¸¦ ³²±â°Å³ª ÇÑ´Ù....
			return TempData;
		}
		return pData[n];
	}
	T& operator [] (int n)
	{
		return GetData(n);
	}
	void operator = (const CArray& arr)
	{
		MaxDataCount = arr.MaxDataCount;
		TempData = arr.TempData;
		pData = (T*)arr.pData;
	}
};

#endif // !defined(AFX_ARRAY_H__4B90A0FC_7328_49B8_97A9_CB29434FF05A__INCLUDED_)

⌨️ 快捷键说明

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