CObArray

Класс CObArray поддерживает массивы указателей от CObject . Эти массивы объектов с С массивами, но они могут динамически сжать и расти в случае необходимости.

Индексы массива всегда начинается в позиции 0. Вы можете решить исправить верхней границы или позволить массив для расширения при добавлении элементов в прошлом текущей границей. Выделяется память последовательно для верхней границы, даже если некоторые элементы являются null.

Под Win32 размер объекта CObArray ограничивается только доступной памяти.

Как с массивом c индексируются время доступа для CObArray элемент постоянна и не зависит от размера массива.

CObArray включает в себя IMPLEMENT_SERIAL макрос для поддержки сериализации и захоронения его элементов. Если массив указателей CObject хранится в архив, либо с перегруженных вставки оператора или функции-члена Serialize , каждый элемент CObject в свою очередь, сериализуется наряду с его индекс массива.

Если вам нужна дамп отдельных CObject элементов массива, необходимо задать глубину объекта CDumpContext 1 или выше.

При удалении объекта CObArray , или когда его элементы будут удалены, удаляются только CObject указатели, не они ссылаются на объекты.

Примечание   Перед использованием массива, используйте SetSize установить его размер и выделить память для него. Если вы не используете SetSize, добавление элементов в массив приводит его часто перераспределяются и скопировать его. Частые перераспределение копирование являются неэффективными и можно фрагментировать память.

Массив класса дифференцирование похож на список наследования. За детальной информацией о наследование класса list специального назначения, обратитесь к статье коллекций в Руководстве Visual C++ программист.

Примечаниеnbsp;  Необходимо использовать макрос IMPLEME&NT_SERIAL в реализации производного класса, если вы хотите сериализовать массив.

# include lt;afxcoll.h>

Члены классаБазовый класс | Иерархическая схема

См. также CByteArray, CWordArray, CStringArray, CPtrArray, CDWordArray

Index