template <typename T> XArray
Inherited from NULL
Inherited by NULL
Friend class NULL
Description
XArray是一个封装了数组功能的模板类,主要用于数据对象里需要保存变长数据的场合,对数据对象的任何修改即意味着变长数组的重建(当数组长度变化时)。与标准库里面的vector不一样,它不太适用于可以随时添加元素的场景,但是另一方面它也有效降低了该类的复杂度,开发者要根据实际情况觉得是否使用XArray类。
Members
Public interface
-
-
XArray<T> & operator
= (const XArray<T> &r)
-
-
-
-
-
-
-
-
-
-
void
resize(int size, bool bCopyFromOld = false)
-
-
-
T& operator
[](int index)
const T& operator
[](int index) const
-
const T&
at(int index) const
void
assign(const XArray<T> & r)
void
append(const XArray<T> & r)
void
assign(const T * pSrc, int size)
void
insert(int index, const T & item)
XArray<T> & operator
= (const vector<T> & vec)
size_t m_Size
数组长度
T * m_pVec
数组首地址
XArray(int size = 0)
function: 构造函数
parameters:
[i]int size = 0: 数组大小,默认情况下为0,数组不分配内存
return value: 无
const T * end() const
XArray<T> & operator = (const XArray<T> &r)
function: 赋值构造函数
parameters:
[i]const XArray<T> &r: 另一个数组对象
return value: 数组对象的引用
XArray(const XArray<T> & r)
function: 复制构造函数
parameters:
[i]const
XArray<T> & r: 另一个数组对象
return value: 无
~XArray()
function: 析构函数,释放内存
parameters: NULL
return value: 无
void release()
function: 释放数组内存
parameters: NULL
return value: 无
void alloc()
function: 为数组分配内存空间
parameters: NULL
return value: 无
void remove(int i)
function: 删除第i个元素
parameters:
[i]int i: 元素序号
return value: 无
int size() const
function: 获取数组长度
parameters: NULL
return value: 数组长度
T & front()
T & back()
const T & front() const
const T & back() const
void resize(int size, bool bCopyFromOld = false)
T * data()
function: 获取数组地址
parameters: NULL
return value: 数组地址
const T * data() const
function: 获取数组地址
parameters: NULL
return value: 数组地址
operator T *() const
function: 转换为数组地址
parameters: NULL
return value: 数组地址
T& operator [](int index)
const T& operator [](int index) const
T& at(int index)
const T& at(int index) const
void assign(const XArray<T> & r)
void append(const XArray<T> & r)
void assign(const T * pSrc, int size)
function: 从另一个数组赋值到本数组
parameters:
[i]const T * pSrc: 源数组地址
[i] int size: 源数组长度
return value: 无
void insert(int index, const T & item)
function: 在第index个位置插入元素
parameters:
[i]int index: 插入位置
[i] const T & item: 代插入的元素
return value: 无
XArray<T> & operator = (const vector<T> & vec)