set Class
Nastavení STL kontejneru třídy slouží k ukládání a načítání dat z kolekce jsou jedinečné hodnoty obsažených prvků a sloužit jako klíčové hodnoty, podle kterých jsou data automaticky objednané.Nesmí přímo změnit hodnotu prvku v sadě.Místo toho musíte odstranit staré hodnoty a vložení prvků novými hodnotami.
template <
class Key,
class Traits=less<Key>,
class Allocator=allocator<Key>
>
class set
Parametry
Key
Typ dat prvku uloženým v sadě.Traits
Typ, který poskytuje funkce objektu, který lze porovnat dvě hodnoty prvku jako klíče řazení k určení jejich relativní pořadí v sadě.Tento argument je nepovinný a binárního predikátu méně <Key> je výchozí hodnota.Allocator
Typ, který představuje objekt uložené přidělování zapouzdří podrobnosti o přidělování a navracení zpět paměti sadě.Tento argument je nepovinný a výchozí hodnota je přidělování*<Key>.*
Poznámky
Nastavit STL je:
Asociativní kontejneru, který proměnnou velikost kontejneru, který podporuje efektivní načtení hodnoty elementu založen na související hodnotu klíče.Dále je jednoduchá asociativní kontejneru protože jeho hodnoty prvku jsou jeho klíče.
Vrátit zpět, protože poskytuje obousměrné iterační přístup k jeho prvky.
Seřadit, protože jeho prvky jsou seřazeny podle hodnot klíčů v kontejneru podle zadaného porovnání funkce.
V tom smyslu, že každá z jeho prvků musí mít jedinečný klíč je jedinečný.Sada je také jednoduchá asociativní kontejneru, jsou také jedinečné prvky.
Sada je také popsána jako šablona třídy, protože je funkce, které poskytuje obecný a nezávislé na konkrétní typ dat jako prvky obsažené.Typ dat, který má být použit, místo toho zadána jako parametr šablony třídy a funkce porovnání a přidělování.
Volba typu kontejner by měla obecně založena na typu hledání a vložením požadovaného aplikací.Asociativní kontejnery jsou optimalizovány pro operace vyhledávání, vkládání a odstraňování.Funkce členů, které výslovně podporují tyto operace jsou účinné provádění je v době, která v průměru úměrný logaritmu počet prvků v kontejneru.Vkládání prvků přestanou platit žádné u iterátorů a odstraňování elementů zruší platnost budou u pouze ty iterátorů, které bylo speciálně nepočítá prvky odstraněny.
Sada by měl být asociativní kontejneru výběr aplikací jsou splněny podmínky jejich klíče Přiřazení hodnoty.Prvky sady jsou jedinečné a sloužit jako vlastní klíče řazení.Model pro tento typ konstrukce je uspořádaný seznam, řekněte, slova, ve kterých slova může dojít pouze jednou.Pokud bylo povoleno více výskytů slova, by multimnožina struktura odpovídající kontejner.Pokud hodnoty je třeba připojit k seznamu slov jedinečný klíč, mapy by vhodné struktury obsahují tato data.Pokud místo klíče nejsou jedinečné, by vícenásobné mapování kontejneru voleb.
Sekvence ovládá pomocí volání uložené funkce objektu typu objednávky sady key_compare.Tento objekt uložené je funkce porovnání, která může být přístupné volání funkce člena key_comp.Obecně nutné prvky pouze menší než srovnatelné stanovit toto pořadí, aby dané dva prvky, může být stanoven, nebo že jsou rovnocenné (v tom smyslu, že ani menší než ostatní), jeden je menší než ostatní.Výsledkem objednání mezi nonequivalent prvky.Na další technické poznámky je funkce porovnání binárního predikátu, indukuje přísné slabé řazení v standardní matematickém smyslu.Binárního predikátu f(x, y) je funkce objektu, který má dva objekty argument x a y a vrácená hodnota true nebo false.Uložená sada řazení je přísné slabá objednávání binárního predikátu je nereflexivní, antisymetrického a přenosné a pokud je přenositelný rovnocennosti, kde dva objekty x a y jsou definovány jako rovnocenné, kdy obě f(x, y) a f(y, x) jsou nepravdivé.Pokud nahradí silnější podmínku rovnosti mezi klíči, rovnocennosti, pořadí se stane celkem (v tom smyslu, že jsou všechny prvky uspořádány k sobě) a odpovídající klíče budou od sebe indiscernible.
Iterační poskytuje sadu tříd je obousměrný iterace, ale funkce členů třídy Vložit a set verzemi vzít jako parametry šablony slabší vstupní iterace, jejichž funkce požadavky jsou minimální více než zaručené třídy iterátorů obousměrné.Iterační odlišné koncepty tvoří rodiny spojených zpřesnění jejich funkčnosti.Každý pojem iterační má vlastní sadu požadavky a algoritmy, které s nimi pracovat, musí omezit jejich předpoklady podle typu iterační požadavky.Může předpokládat, že může přímo odkázat vstupní iterační odkázat na některých objektů a může být zvýšen na další iterační v sekvenci.Toto je minimální sadu funkcí, ale je dostatečně moci hovořit o rozsahu u iterátorů srozumitelně [_First, _Last) v kontextu funkce členů dané třídy.
Konstruktory
Vytvoří sadu prázdné nebo je kopírovat všechny nebo část jiné sady. |
Funkce TypeDef
Typ, který představuje allocator třídy pro objekt sady. |
|
Typ, který poskytuje obousměrné iterační která mohou číst const prvku v sadě. |
|
Typ, který obsahuje ukazatel const prvku v sadě. |
|
Typ, který poskytuje odkaz na const prvku uložena v sadě pro čtení a provádění const operace. |
|
Typ, který poskytuje obousměrné iterační která mohou číst všechny const prvku v sadě. |
|
Typ číslo se znaménkem představující počet prvků v rozsahu mezi prvky odkazuje u iterátorů sadu lze použít. |
|
Typ, který poskytuje obousměrné iterace, který lze číst nebo upravovat libovolný prvek v sadě. |
|
Typ, který poskytuje funkce objektu, který lze porovnat dva klíče řazení určit relativní pořadí dvou prvků v sadě. |
|
Popisuje typ objektu uložen jako element sadu jako klíč řazení. |
|
Typ, který obsahuje ukazatel na prvek v sadě. |
|
Typ, který poskytuje odkaz na element uložena v sadě. |
|
Typ, který poskytuje obousměrné iterace, mohou číst nebo upravovat prvek stornované sady. |
|
Zadejte celé číslo bez znaménka, představující počet prvků v sadě. |
|
Typ, který poskytuje funkce objektu, který lze porovnat dva prvky k určení jejich relativní pořadí v sadě. |
|
Popisuje typ objektu uložen jako element sadu jako hodnotu. |
Funkce členů
Vrátí iterátoru, který řeší první prvek v sadě. |
|
Vrátí iterační const, který řeší první prvek v sadě. |
|
Vrátí iterační const, který řeší umístění následných poslední prvek v sadě. |
|
Vymaže všechny prvky sady. |
|
Vrátí počet prvků v sadě, jehož klíč odpovídá zadán parametr klíč. |
|
Vrátí const iterační adresování první prvek v sadě převrácené. |
|
Vrátí iterační const, který řeší umístění následných poslední prvek v sadě stornované. |
|
Vloží prvek do sady vyrobeno na místě. |
|
Vloží prvek vyrobeno na místě do sady nápovědu pro umístění. |
|
Zkoušky sada je prázdný. |
|
Vrátí iterátoru, který řeší umístění následných poslední prvek v sadě. |
|
Vrátí funkce dvojice iterátorů první prvek v sadě s klíčem, který je větší než zadaný klíč a první prvek v sadě s klíčem, který je roven nebo větší než klíč. |
|
Odebere prvek nebo rozsah prvků v sadě od zadané pozice nebo odebere prvky, které odpovídají zadaným klíčem. |
|
Vrátí iterátoru adresování umístění prvku sadu, která obsahuje ekvivalentní klávesa klíč. |
|
Vrátí kopii allocator objekt použitý k vytvoření sady. |
|
Vloží prvek nebo prvky rozsah sadu. |
|
Získá kopii objektu porovnání použít pořadí klíče v sadě. |
|
Iterace vrátí první prvek v sadě s klíčem, který je roven nebo větší než zadaný klíč. |
|
Vrátí maximální délka sady. |
|
Vrátí iterátoru adresování první prvek v sadě převrácené. |
|
Vrátí iterátoru, který řeší umístění následných poslední prvek v sadě stornované. |
|
Vrátí počet prvků v sadě. |
|
Výměny dvě sady prvků. |
|
Iterace vrátí první prvek v sadě s klíčem, který je větší než zadaný klíč. |
|
Získá kopii objektu porovnání používá pořadí hodnot prvek v sadě. |
Operátory
Nahradí kopie jinou sadu prvků sady. |
Požadavky
Záhlaví: <set>
Obor názvů: std