Контейнер (абстрактный тип данных)

редактировать

В информатике, контейнер - это класс, структура данных или абстрактный тип данных (ADT), экземпляры которого являются коллекциями других объектов. Другими словами, они хранят объекты организованным образом с соблюдением определенных правил доступа. Размер контейнера зависит от количества содержащихся в нем объектов (элементов). Базовые (унаследованные) реализации различных типов контейнеров могут различаться по размеру и сложности и обеспечивать гибкость в выборе правильной реализации для любого заданного сценария.

Содержание
  • 1 Функция и свойства
  • 2 Типы
  • 3 Графические контейнеры
  • 4 См. Также
  • 5 Ссылки
  • 6 Внешние ссылки
Функции и свойства

Контейнеры можно охарактеризовать следующими тремя свойствами:

  • доступ, то есть способ доступа к объектам контейнера. В случае массивов доступ осуществляется с помощью индекса массива. В случае стеков доступ осуществляется в соответствии с порядком LIFO (последний пришел, первым ушел), а в случае очередей - в соответствии с FIFO (первым пришел, first out) order;
  • storage, то есть способ хранения объектов контейнера;
  • traversal, то есть способ обхода объектов контейнера.

классы контейнера ожидается, что будут реализованы следующие методы:

  • создать пустой контейнер (конструктор);
  • вставить объекты в контейнер;
  • удалить объекты из контейнера;
  • удалить все объекты в контейнере (очистить);
  • получить доступ к объектам в контейнере;
  • получить доступ к количеству объектов в контейнере (count).

Иногда используются контейнеры в сочетании с итераторами.

Типы

Контейнеры можно классифицировать как однозначные контейнеры или как ассоциативные контейнеры.

Однозначные контейнеры хранят каждый объект независимо. Доступ к объектам можно получить напрямую или с помощью итератора.

Ассоциативный контейнер использует ассоциативный массив, карту или словарь, состоящий из пар ключ-значение, так что каждый ключ появляется не более одного раза в контейнер. Ключ используется для поиска значения, объекта, если он хранится в контейнере. Ассоциативные контейнеры используются в языках программирования как шаблоны классов.

Контейнерные абстрактные типы данных включают:

Общие структуры данных, используемые для реализации этих абстрактных типов, включают:

Графические контейнеры

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

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-15 10:47:26
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте