///通用库动态数组模板类
/**
* 通用库4.0版
* 这里定义了一个动态数组模板类。这次将以前的XDyanmicArray和XArray合并成一个XArray了。
* 除此之外,增加了数组元素初始化为0的操作,同时,会执行数组元素默认的构造函数和析造函数。
* 同样,这个动态数组比较适合元数据中没有指针数据成员的元素或额外使用资源的元素。
* 对于使用对象为数组元素的数组,可以使用XObjectArray模板类,可以有效的解决问题。
* @author zdhsoft(祝冬华)
* @version 4.0
* @date 2008-03-01
* @file xarray.h
* @test 已经经过测试
*/
#ifndef _X_ARRAY_H_
#define _X_ARRAY_H_
#include
#include
namespace zdh
{
const XInt ARRAY_INVALID_INDEX = -1;
///数组模板类
template
class XArray
{
public:
typedef T ElementType;
typedef ElementType * PElementType;
///缺省构造函数
XArray()
:m_Length(0),m_Capacity(0),m_Data(NULL)
{}
///指定初始元素个数的构造函数
/**
@param [in] aInitLength 初始化数组的大小
*/
XArray(XInt aInitLength)
:m_Length(0),m_Capacity(0),m_Data(NULL)
{
if( aInitLength > 0)
{
InitLength(aInitLength);
}
}
///指定初始元素个数以及缺省元素值的构造函数
/**
@param [in] aInitLength 初始化数组的大小
@param [in] aDefault 初始化数组元素的默认值
*/
XArray(XInt aInitLength,const T & aDefault)
:m_Length(0),m_Capacity(0),m_Data(NULL)
{
if( aInitLength > 0)
{
InitLength(aInitLength,aDefault);
}
}
///缺省拷贝构造函数
XArray(const XArray
///指定大小以及初始元素指针的构造函数
XArray(const T * pData,XInt aSize,XInt aStartIndex = 0);
///指定大小以及初始元素数组的构造函数
XArray(const XArray
///析造函数
~XArray
疯狂医院达什医生中文版(Crazy Hospital)
疯狂医院达什医生最新版是一款医院模拟经营类游戏,逼真的场景画
宝宝庄园官方版
宝宝庄园官方版是一款超级经典好玩的模拟经营类型的手游,这个游
桃源记官方正版
桃源记是一款休闲娱乐类的水墨手绘风格打造的模拟经营手游。玩家
长途巴士模拟器手机版
长途巴士模拟器汉化版是一款十分比真好玩的大巴车模拟驾驶运营类
房东模拟器最新版2024
房东模拟器中文版是一个超级有趣的模拟经营类型的手游,这个游戏