Класс CObList
Поддерживает упорядоченные списки неуникального указателей, доступных CObject последовательно или значением указателя.
class CObList : public CObject
Члены
Открытые конструкторы
Имя |
Описание |
---|---|
Создает пустой список для указателей CObject. |
Открытые методы
Имя |
Описание |
---|---|
Добавляет элемент (или все элементы в других список) в начало списка (делает новую головку). |
|
Добавляет элемент (или все элементы в других список) в кабелю списка (делает новый хвост). |
|
Получает положение элемента, заданного значением указателя. |
|
Получает положение элемента, указанного на нулевой- индексу. |
|
Возвращает элемент на заданной позиции. |
|
Получает число элементов в данном списке. |
|
Возвращает головной элемент списка (не может быть пустым). |
|
Возвращает позицию головного элемента списка. |
|
Возвращает следующий элемент для итерации. |
|
Возвращает предыдущий элемент для итерации. |
|
Получает число элементов в данном списке. |
|
Возвращает элемент списка с префиксом tail (не может быть пустым). |
|
Возвращает позицию элемента с префиксом tail списка. |
|
Вставляет новый элемент после заданной позиции. |
|
Вставляет новый элемент до заданной позиции. |
|
Тесты для пустого состояния списка (без элементов). |
|
Удаляет все элементы из этого списка. |
|
Удаляет элемент из этого списка, указанного по позиции. |
|
Удаляет элемент из списка head. |
|
Удаляет элемент из списка с префиксом tail. |
|
Задает элемент по заданной позиции. |
Заметки
Списки CObList аналогично поведению двойной- связанные списки.
Переменная типа POSITION ключ для списка.Можно использовать переменную POSITION и в виде итератора для просмотра списка последовательно и как закладка, чтобы сохранить место.Позиция не то же, что и индекс.
Вставка элемента очень быстро в начало списка на кабеле и в известном POSITION.Последовательный поиск необходим для поиска элемента по значению или по индексу.Этот поиск может быть медленным, если список длинный.
CObList содержит макрос IMPLEMENT_SERIAL для поддержки сериализации и сбрасывать его элементов.Если список указателей CObject хранится в архив или с перегруженным оператора insert или функцией-членом Serialize, то каждый элемент CObject сериализации в свою очередь.
Если требуется дамп отдельных элементов CObject в списке, необходимо установить глубину контекста дампа значение 1 или больше.
Если объект CObList удаления или при его элементы удалены только указатели CObject, а не объекты удалены они ссылаются.
Можно создать собственные классы из CObList.Новый класс списка, предназначенный для хранения указателей на объекты, производным от CObject добавляет новые элементы данных и новых функций-членов.Обратите внимание, что результирующий список не является строго safe типа, потому что он допускает вставку любого указателя CObject.
Примечание |
---|
Необходимо использовать макрос IMPLEMENT_SERIAL в реализации производного класса, если планируется выполнить сериализацию списка. |
Дополнительные сведения об использовании CObList см. в статье коллекции.
Иерархия наследования
CObList
Требования
Header: afxcoll.h