Стандартный типы данных и реализации функции в языках программирование. Stl (стандартная библиотека шаблонов) компоненты и контейнеры. Структура stl и адаптеры
Download 196,35 Kb.
|
Меликулов Максим ПИ21-14 (1)
контейнер (container): управляет набором объектов в памяти.
итератор (iterator): обеспечивает для алгоритма средство доступа к содержимому контейнера. алгоритм (algorithm): определяет вычислительную процедуру. функциональный объект (functionobject): инкапсулирует функцию в объекте для использования другими компонентами. адаптер (adaptor): адаптирует компонент для обеспечения различного интерфейса. Из определения контейнера следует, что любая пользовательская структура данных является контейнером. В нашем случае контейнеры есть стандартные структуры данных, такие как список (list), вектор (vector), словарь (map) и многие другие. Формальные требования к контейнерам довольно обширны, но основным является правило доступа к элементам. Доступ к элементам контейнера осуществляется через специальные объекты — итераторы. Итератор, указывающий на первый элемент, можно получить при помощи метода iteratorbegin(); контейнера. Итератор, указывающий за последний элемент, можно получить при помощи метода iteratorend(); контейнера. Другими словами, итераторы располагаются в полуинтервале (или полуотрезке), что можно формально записать как [begin, end). Итератор — объект, предоставляющий доступ к элементам контейнера и позволяющий их перебирать. Итератор является свойством контейнера. В первых реализациях стандартной библиотеки С++ итератор реализовывался как указатель на элемент контейнера. В современных реализациях это класс, инкапсулирующий указатель на объект контейнера. Основные требования к итераторам — наличие операторов разыменования и инкремента. Алгоритмы выполняют операции над находящихся внутри контейнера. Существуют алгоритмы инициализации, поиска, сортировки и замены тех, которые находятся внутри контейнера. Многие алгоритмы предназначены для работы с последовательностями (последовательностями), которые представляют собой список линий элементов внутри контейнера. Download 196,35 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2025
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling