Поделиться через


Класс deque

Упорядочивает элементы данного типа в линейном размещения и, как и вектор, обеспечивает быстрый прямой доступ к любому элементу, и эффективные вставки и удаления в обратно контейнера. Однако в отличие от вектор, класс deque также поддерживает эффективную вставки и удаления в начале контейнера.

template <
    class Type, 
    class Allocator=allocator<Type> 
>
    class deque

Параметры

  • Type
    Тип данных элементов, сохраняемых в deque.

  • Allocator
    Тип, представляющий сохраненный объект распределителя, инкапсулирующий информацию о выделении deque и освобождение памяти. Этот аргумент является необязательным и значение по умолчанию allocator<Type>.

Заметки

Выбор типа контейнера создавайтесь обычно типа поиска и вставка требуемого приложением. Столбцы должен быть предпочтительным контейнер для управления последовательность при прямой доступ к любому элементу в награде и вставках или удалениях элементов необходим только в конце последовательности. Производительность контейнера list при главна эффективные вставки и удаления (при расчете времени) в любом месте внутри последовательности в награде. Такие операции в середине последовательности для копирования и назначения элемента пропорциональных на число элементов в последовательности (линейном времени).

Распространение Deque возникает, когда функцию-член должен вставка или привести к удалению элементов последовательности.

  • Если элемент вставляется в пустую последовательность, или если элемент стерт, чтобы оставить пустую последовательность, то предыдущие итераторов возвращенные begin и end являются недопустимыми.

  • Если элемент вставляется в позиции первой deque, все итераторы, но отсутствуют ссылки, которые обозначают существующие элементы не будут недопустимыми.

  • Если элемент вставляется в конце deque, затем end и всех итераторов, но нет ссылок, которые обозначают существующие элементы ознакомьтесь недопустимым.

  • Если элемент стерт в начале deque, только такой итератор и ссылки на стертому элемент становятся недопустимыми.

  • Если последний элемент стерт от конца deque, только такой итератор в последний элемент и ссылки на стертому элемент становятся недопустимыми.

В противном случае вставка или стирающ элемент и что все итераторы ссылки.

конструкторов;

deque

Создает deque. предоставляют несколько конструкторов, чтобы настраивать содержимое нового deque различными способами: пустой; загружается с указанным количеством пустых элементов; содержимое перемещены или копироваться из другого deque; содержимое, скопированных или перемещенные с использованием итератора; скопированный элемент и один раз в deque_Count. Некоторые конструкторы позволяют использование пользовательского allocator создание элементов.

Определения типов

allocator_type

Тип, представляющий класс allocator для объекта deque.

const_iterator

Тип, который предоставляет произвольно-доступный итератор, может получать и чтение элементов в deque как const

const_pointer

Тип, который содержит указатель элемент в deque как const.

const_reference

Тип, который предоставляет ссылку на элемент в deque для чтения и других операций в качестве const.

const_reverse_iterator

Тип, который предоставляет произвольно-доступный итератор, может получать и чтение элементов в deque как const. Deque представляет в обратном порядке. Дополнительные сведения см. в разделе Класс reverse_iterator.

difference_type

Тип, который содержит различие между 2 произвольно-доступными итераторами, относящимися к элементам в том же deque.

итератор

Тип, который предоставляет произвольно-доступный итератор, который может считывать и изменять любой элемент в deque.

указатель

Тип, который содержит указатель элемент в deque.

Ссылка

Тип, который предоставляет ссылку на элемент хранящихся в deque.

reverse_iterator

Тип, который предоставляет произвольно-доступный итератор, который может считывать и изменять элемент в deque. Deque просматриваемый в обратном порядке порядок.

size_type

Тип, который подсчитывает число элементов в deque.

value_type

Тип, представляющий тип данных, хранящихся в deque.

Функции-члены

assign

Удаляет элементы из deque и копирует новую последовательность элементов к целевому объекту deque.

at

Возвращает ссылку на элемент в указанном расположении в deque.

back

Возвращает ссылку на последнему элементу deque.

begin

Возвращает произвольно-доступный итератор слишком первый элемент в deque.

deque::cbegin

Возвращает итератор const на первый элемент в deque.

deque::cend

Возвращает произвольно-доступный итератор const, указывающий только за пределы deque.

clear

Удаляет все элементы deque.

deque::crbegin

Возвращает произвольно-доступный итератор const на первый элемент в порядке просмотретьом deque в обратном порядке.

deque::crend

Возвращает произвольно-доступный итератор const на первый элемент в порядке просмотретьом deque в обратном порядке.

deque::emplace

Вставляет элемент построен на месте в deque в указанной позиции.

deque::emplace_back

Добавляет элемент, созданный на месте в конец deque.

deque::emplace_front

Добавляет элемент, созданный на месте, чтобы deque.

empty

Возвращает true при deque содержит ноль элементов и false, если оно содержит один или несколько элементов.

end

Возвращает произвольно-доступный итератор, указывающий только за пределы deque.

erase

Удаляет элемент или набор элементов в deque из заданных позиций.

front

Возвращает ссылку на первый элемент в deque.

get_allocator

Возвращает копию объекта allocator, который используется для построения deque.

Вставка

Вставляет элемент, несколько элементов или диапазон элементов в deque в указанной позиции.

max_size

Возвращает максимально возможная длина deque.

pop_back

Удаляет элемент в конце deque.

pop_front

Удаляет элемент в начале deque.

push_back

Добавляет элемент в конец deque.

push_front

Добавляет элемент к началу deque.

rbegin

Возвращает произвольно-доступный итератор на первый элемент в обращенном deque.

rend

Возвращает произвольно-доступный итератор, указывающий только за последним элементом в обращенном deque.

resize

Определяет новый размер для deque.

deque::shrink_to_fit

Отменяет резерв рабочей мощности.

size

Возвращает количество элементов в deque.

буфер обмена

Меняет местами элементы 2 deque s.

Операторы

operator[]

Возвращает ссылку на элемент deque в указанной позиции.

deque::operator=

Заменяет элементы deque копией другого deque.

Требования

Заголовок: <deque>

См. также

Ссылки

Потокобезопасность в стандартной библиотеке C++

Библиотека стандартных шаблонов

Другие ресурсы

члены<deque>

члены класса deque