|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer|
Supports dynamic arrays of bytes.
The member functions of CByteArray are similar to the member functions of class CObArray. Because of this similarity, you can use the CObArray reference documentation for member function specifics. Wherever you see a CObject pointer as a function parameter or return value, substitute a BYTE.
CObject* CObArray::GetAt( int <nIndex> ) const;
for example, translates to
BYTE CByteArray::GetAt( int <nIndex> ) const;
CByteArray incorporates the IMPLEMENT_SERIAL macro to support serialization and dumping of its elements. If an array of bytes is stored to an archive, either with the overloaded insertion (<<) operator or with the Serialize member function, each element is, in turn, serialized.
Before using an array, use SetSize to establish its size and allocate memory for it. If you do not use SetSize, adding elements to your array causes it to be frequently reallocated and copied. Frequent reallocation and copying are inefficient and can fragment memory.
If you need debug output from individual elements in the array, you must set the depth of the CDumpContext object to 1 or greater.
For more information on using CByteArray, see the article Collections.