Класс CByteArray
Поддерживает динамические массивы байтов.
Синтаксис
class CByteArray : public CObject
Участники
Функции-члены похожи на функции-члены CByteArray
класса CObArray. Из-за этой схожести для изучения этой функции-члена можно использовать справочную документацию по классу CObArray
. Где бы вы ни видели CObject
указатель в качестве параметра функции или возвращаемого значения, замените BYTE.
CObject* CObArray::GetAt( int <nIndex> ) const;
, например, преобразуется в
BYTE CByteArray::GetAt( int <nIndex> ) const;
Открытые конструкторы
Имя | Описание |
---|---|
CByteArray::CByteArray | Создает пустой массив. |
Открытые методы
Имя | Описание |
---|---|
CByteArray::Add | Добавляет элемент в конец массива. При необходимости размер массива увеличивается. |
CByteArray::Append | Добавляет другой массив к массиву. При необходимости размер массива увеличивается. |
CByteArray::Copy | Копирует другой массив в этот массив. При необходимости размер массива увеличивается. |
CByteArray::ElementAt | Возвращает временную ссылку на байт в массиве. |
CByteArray::FreeExtra | Освобождает всю неиспользуемую память сверх текущей верхней границы. |
CByteArray::GetAt | Возвращает значение по указанному индексу. |
CByteArray::GetCount | Возвращает количество элементов в массиве. |
CByteArray::GetData | Разрешает доступ к элементам в массиве. Может иметь значение NULL. |
CByteArray::GetSize | Возвращает количество элементов в массиве. |
CByteArray::GetUpperBound | Возвращает самый большой допустимый индекс. |
CByteArray::InsertAt | Вставляет элемент (или все элементы в другом массиве) по указанному индексу. |
CByteArray::IsEmpty | Определяет, пуст ли массив. |
CByteArray::RemoveAll | Удаляет все элементы из этого массива. |
CByteArray::RemoveAt | Удаляет элемент по указанному индексу. |
CByteArray::SetAt | Задает значение для указанного индекса. Размер массива не увеличивается. |
CByteArray::SetAtGrow | Задает значение для указанного индекса. При необходимости размер массива увеличивается. |
CByteArray::SetSize | Задает число элементов, которые будут храниться в этом массиве. |
Открытые операторы
Имя | Описание |
---|---|
CByteArray::operator [ ] | Получает или задает элемент с указанным индексом. |
Замечания
CByteArray
включает макрос IMPLEMENT_SERIAL для поддержки сериализации и дампа его элементов. Если массив байтов хранится в архиве либо с перегруженным оператором вставки ( <<) либо с Serialize
функцией-членом, каждый элемент, в свою очередь, сериализован.
Примечание.
Перед работой с массивом используйте функцию SetSize
, чтобы определить его размер и выделить под него память. Если не использовать функцию SetSize
, при добавлении элементов в массив он будет часто копироваться и для него снова и снова будет повторно выделяться память. Это может привести к ухудшению производительности и фрагментации памяти.
Если вам нужны отладочные выходные данные отдельных элементов в массиве, необходимо задать глубину CDumpContext
объекта равным 1 или больше.
Дополнительные сведения об использовании CByteArray
см. в статье "Коллекции".
Иерархия наследования
CByteArray
Требования
Заголовок: afxcoll.h