CByteArray是
MFC中BYTE一种集合类,用于申明CByteArray类的数据,并且用相关函数对其进行处理。该类是8位无符号整数
BYTE类型,范围0—255,
头文件是Afxcoll.h。
类CByteArray的成员函数与类CObArray的成员函数类似。因此,也可以参考类CObArray的文档。只需把函数参数或返回值中出现的CObject
指针换成BYTE就可以了。例如,类CObArray中的函数:
CByteArray中包含了宏IMPLEMENT_SERIAL,以支持对象的
串行化和转储。如果
字节数组被存到了档案中,不管使用覆盖的操作符“<<”或成员函数Serialize,则其中的元素被
串行化。
在使用
数组之前,要调用SetSize设置它的大小并分配内存。如果没有使用SetSize,在
数组中增加元素会引起数组内存空间频繁的重新分配以及数据拷贝。内存频繁的重新分配和数据拷贝会影响性能并造成
内存碎片。
如果需要对
数组中每个元素的输出调试信息,就要把CDumpContext对象的深度设置为1或更大。
SetAt给
数组中指定下标的元素赋值,但不能动态增长数组(指定的下标不能越界)
SetAtGrow给
数组中指定下标的元素赋值,在
下标越界时动态增长数组Add在数组末尾增添一个元素,必要时增长数组Append在数组末尾接上另一个数组,必要时增长数组
InsertAt在指定的下标处插入元素(或另外一个
数组的内容)