Класс CBaseList
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод CBaseList реализует абстрактный список. Шаблон класса CGenericList , производный от CBaseList, обеспечивает проверку типов и более простой интерфейс, чем класс CBaseList .
Класс CBaseList смоделирован по образцу класса CObList в библиотеке Microsoft Foundation Classes (MFC). Позиции в списке представлены структурой POSITION. Вызывающий объект не должен обращаться к внутренним членам структуры POSITION; рассматривать его как указатель на узел списка. Положение объекта в списке остается действительным до удаления объекта.
Список не требует поддержки содержащихся в нем объектов. Он не выполняет управление хранилищем или копирование объектов. Объекты могут находиться в нескольких списках.
Примерно половина методов в этом классе действуют на отдельных объектах. Эти методы имеют суффикс — I в имени метода. Другие методы действуют на целые списки. Например, метод CBaseList::AddAfter добавляет список к другому списку. Операции с одним объектом возвращают значения POSITION или NULL при сбое. Операции со списком возвращают значение TRUE в случае успешного выполнения или FALSE в противном случае.
Защищенные переменные-члены | Описание |
---|---|
m_Count | Количество элементов в списке. |
m_pFirst | Указатель на первый узел в списке. |
m_pLast | Указатель на последний узел в списке. |
Защищенные методы | Описание |
GetNextI | Извлекает элемент в указанной позиции и перемещает позицию. |
GetI | Извлекает элемент в указанной позиции. |
FindI | Извлекает первую позицию, содержащую указанный элемент. |
RemoveHeadI | Удаляет первый элемент в списке. |
RemoveTailI | Удаляет последний элемент в списке. |
RemoveI | Удаляет элемент по указанному положению. |
AddTailI | Добавляет элемент в конец списка. |
AddHeadI | Добавляет элемент в начало списка. |
AddAfterI | Вставляет элемент после указанной позиции. |
AddBeforeI | Вставляет элемент перед указанной позицией. |
Открытые методы | Описание |
CBaseList | Метод конструктора. |
~ CBaseList | Метод деструктора. |
Removeall | Удаляет все узлы из списка. |
GetHeadPositionI | Извлекает позицию первого элемента в списке. |
GetTailPositionI | Извлекает позицию последнего элемента списка. |
GetCountI | Извлекает количество элементов в списке. |
Далее | Извлекает следующую позицию в списке. |
Предыдущая | Извлекает предыдущую позицию в списке. |
AddHead | Вставляет другой список в начало этого списка. |
AddTail | Добавляет еще один список в конец этого списка. |
Добавить После | Вставляет список после указанной позиции. |
AddBefore | Вставляет список перед указанной позицией. |
MoveToTail | Разделяет список и добавляет головную часть к заключительному фрагменту другого списка. |
MoveToHead | Разделяет список и вставляет хвостовую часть в начало другого списка. |
Reverse | Изменяет порядок списка в обратном направлении. |
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|