deque – třída
Uspořádává prvky daného typu do lineárního uspořádání a stejně jako vektor nabízí rychlý náhodný přístup ke kterémukoli prvku a také efektivní vložení a odebírání na konci kontejneru.Nicméně na rozdíl od vektoru podporuje třída deque také efektivní vkládání a odebírání na konci kontejneru.
template <
class Type,
class Allocator=allocator<Type>
>
class deque
Parametry
Type
Datový typ, který bude uložen v objektu deque.Allocator
Typ, který představuje uložený objekt alokátoru, který zapouzdřuje informace o přidělování a navracení zpět paměti objektu deque.Tento argument je nepovinný a výchozí hodnotou je allocator<Type>.
Poznámky
Volba typu kontejneru by měla obecně vycházet z typu vyhledávání a vkládání vyžadovaného aplikací.Jako kontejnery pro správu sekvencí, kdy není náhodný přístup k libovolnému prvku obvykle využíván a vkládání a odebírání prvků je požadováno pouze na konci sekvence, by měly být upřednostňovány vektory.Výkon kontejneru seznam je vynikající, když není efektivní vkládání a odebírání (v konstantním čase) v libovolném místě v sekvenci obvykle vyžadováno.Tyto operace uprostřed sekvence vyžadují kopírování prvků a přiřazování úměrné počtu prvků v sekvenci (lineární čas).
K přerozdělení objektu deque dochází, když členská funkce musí vložit nebo smazat prvky sekvence:
Pokud je prvek vložen do prázdné sekvence, nebo pokud byl prvek pro vyprázdnění sekvence vymazán, pak se iterátory dříve vracené pomocí begin a end zneplatní.
Pokud je prvek vložen na první pozici objektu deque, pak se zneplatní všechny iterátory, ale ne odkazy, které určují existující prvky.
Pokud je prvek vložen na konec objektu deque, pak se zneplatní end a všechny iterátory, ale ne odkazy, které určují existující prvky.
Pokud je vymazán prvek na začátku objektu deque, pak se zneplatní pouze iterátor a odkazy na tento smazaný prvek.
Pokud je vymazán prvek na konci objektu deque, pak se zneplatní pouze iterátor na poslední prvek a odkazy na tento smazaný prvek.
V ostatních případech vložení nebo smazání prvku zneplatní všechny iterátory i reference.
Konstruktory
Vytvoří objekt deque. Některé konstruktory jsou k dispozici pro nastavení obsahu nového objektu deque různými způsoby: vytvořením s prázdným obsahem, načtením s určeným počtem prázdných prvků, přesunutím nebo zkopírováním obsahu z jiného objektu deque, zkopírováním nebo přesunutím pomocí iterátoru, nebo vložením jednoho prvku do objektu deque_Count krát.Některé konstruktory umožňují pro vytvoření prvků použití vlastního objektu allocator. |
Typedefs
Typ, který představuje třídu allocator pro objekt deque. |
|
Typ, který poskytuje iterátor náhodného přístupu, který může zobrazovat a číst prvky v objektu deque jako const |
|
Typ, který poskytuje ukazatel na prvek v objektu deque jako const. |
|
Typ, který poskytuje odkaz na prvek v objektu deque pro čtení a další operace jako const. |
|
Typ, který poskytuje iterátor náhodného přístupu, který může zobrazovat a číst prvky v objektu deque jako const.Obsah objektu deque se zobrazí pozpátku.Další informace naleznete v tématu reverse_iterator – třída |
|
Typ, který poskytuje rozdíl mezi dvěma iterátory náhodného přístupu odkazujícími na prvky ve stejném objektu deque. |
|
Typ, který poskytuje iterátor náhodného přístupu, který může číst nebo upravovat libovolný prvek v objektu deque. |
|
Typ, který poskytuje ukazatel na prvek v objektu deque. |
|
Typ, který poskytuje odkaz na prvek uložený v objektu deque. |
|
Typ, který poskytuje iterátor náhodného přístupu, který může číst nebo upravovat prvek v objektu deque.Obsah objektu deque se zobrazí v opačném pořadí. |
|
Typ, který představuje počet prvků v objektu deque. |
|
Typ, který představuje datový typ uložený v objektu deque. |
Členské funkce
Odstraní prvky z objektu deque a zkopíruje nové pořadí prvků do cílového objektu deque. |
|
Vrátí odkaz na prvek na zadaném umístění v objektu deque. |
|
Vrátí odkaz na poslední prvek objektu deque. |
|
Vrátí iterátor náhodného přístupu adresující první prvek v objektu deque. |
|
Vrátí iterátor typu const na první prvek v objektu deque. |
|
Vrátí iterátor náhodného přístupu typu const, který ukazuje za konec objektu deque. |
|
Vymaže všechny prvky objektu deque. |
|
Vrátí iterátor náhodného přístupu typu const na první prvek v objektu deque zobrazeném v obráceném pořadí. |
|
Vrátí iterátor náhodného přístupu typu const na první prvek v objektu deque zobrazeném v obráceném pořadí. |
|
Vrátí prvek vyrobený na místě do objektu deque na určenou pozici. |
|
Přidá prvek vyrobený na místě na konec objektu deque. |
|
Přidá prvek vyrobený na místě na začátek objektu deque. |
|
Vrátí hodnotu true, pokud objekt deque neobsahuje žádný prvek a hodnotu false, pokud obsahuje jeden nebo více elementů. |
|
Vrátí iterátor pro náhodný přístup, který ukazuje přesně za konec objektu deque. |
|
Odstraní prvek nebo rozsah elementů v objektu deque ze zadaných pozic. |
|
Vrátí odkaz na první prvek v objektu deque. |
|
Vrátí kopii objektu allocator, který je použit pro vytvoření objektu deque. |
|
Vloží prvek, několik prvků nebo rozsahu prvků do objektu deque na určené pozici. |
|
Vrátí maximální možnou délku objektu deque. |
|
Smaže prvek na konci objektu deque. |
|
Smaže prvek na začátku objektu deque. |
|
Přidá prvky na konec objektu deque. |
|
Přidá prvky na začátek objektu deque. |
|
Vrátí iterátor náhodného přístupu k prvnímu prvku v reverzním uspořádání objektu deque. |
|
Vrátí iterátor náhodného přístupu, který ukazuje za poslední prvek v reverzním uspořádání objektu deque. |
|
Určuje novou velikost objektu deque. |
|
Odstraní přebytečnou kapacitu. |
|
Vrátí počet prvků v objektu deque. |
|
Vymění prvky dvou objektů deque. |
Operátory
Vrátí odkaz na prvek deque na určené pozici. |
|
Nahradí prvky objektů deque kopií jiného objektu deque. |
Požadavky
Hlavička: <deque>
Viz také
Referenční dokumentace
Bezpečný přístup z více vláken ve standardní knihovně C++