Sdílet prostřednictvím


multiset Class

Standardní šablona knihovny, kterou Multimnožinové třída je použita pro ukládání a načítání dat z kolekce, které hodnoty obsažených prvků nemusí být jedinečné a které mohou sloužit jako hodnoty klíče, kterými jsou data automaticky objednané.Hodnota klíče prvku multimnožina může změnit přímo.Místo toho musí být odstraněny staré hodnoty a vložené prvky novými hodnotami.

template <
   class Key, 
   class Compare=less<Key>, 
   class Allocator=allocator<Key> 
>
class multiset

Parametry

  • Klíč
    Typ datového prvku uložené v multimnožina.

  • Compare
    Typ, který poskytuje funkce objektu, který lze porovnat dvě hodnoty prvku jako klíče řazení určit jejich relativní pořadí, multimnožina.Binárního predikátu méně<Key> výchozí hodnotu.

  • Allocator
    Typ objektu uložených přidělování, které zapouzdřuje podrobnosti o přidělování a navracení zpět paměti multimnožina.Výchozí hodnota je přidělování*<Key>.*

Poznámky

STL Multimnožinové třída je:

  • Asociativní kontejnerem, což je velikost proměnné kontejner, který podporuje efektivní načtení hodnoty prvku na základě přidružené hodnoty klíče.

  • Vrátit zpět, protože poskytuje u iterátorů obousměrný přístup k jeho prvky.

  • Seřazeny, protože jeho prvky jsou seřazeny podle hodnot klíčů v kontejneru v souladu s zadaný porovnávací funkce.

  • Více v tom smyslu, že jeho prvky nemusí mít jedinečné klíče tak, aby jedna hodnota klíče může mít mnoho hodnot prvku.

  • Jednoduchá asociativní kontejneru klíče hodnoty jsou hodnoty prvku.

  • Šablona třídy, protože poskytuje funkce je obecný a tak 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 spolu s funkce porovnání a přidělování.

Iterační poskytované Multimnožinové třídy je obousměrný iterace, ale funkce členů třídy Vložit a multimnožina verze, které jako parametry šablony slabší vstupní iterace, jejichž funkce požadavky jsou minimální více než zaručených třídou u 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 vstupní iterační odkázat na některé objekt přímo odkázat a může být zvýšen na další iterace v sekvenci.Toto je minimální sadu funkcí, ale je dostatečně srozumitelně komunikovat o rozsahu u iterátorů [_First, _Last) v kontextu funkce členů dané třídy.

Volba typu kontejner by obecně založené 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á je 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 pouze ty u iterátorů, které bylo speciálně nepočítá prvky odstraněny.

Asociativní kontejneru při splnění podmínek jejich klíče Přiřazení hodnoty voleb splňuje aplikací by měly být multimnožina.Prvky multimnožina může být více a sloužit jako vlastní klíče řazení tak klíče nejsou jedinečné.Pro tento typ konstrukce modelu je uspořádaný seznam, slova říci, v nichž slova může dojít k více než jednou.Bylo více výskytů slova byl zakázán, potom sadu by byla struktura odpovídající kontejner.Pokud jedinečné definice byly připojeny jako hodnoty do seznamu slov jedinečný klíč, mapy by vhodné struktury obsahují tato data.Pokud místo definice nebyly jedinečný, vícenásobné mapování by kontejner voleb.

Pořadí ovládacích prvků pomocí volání uložené funkce objektu typu objednávky multimnožina Compare.Tento objekt uložené je porovnání funkce, která může být přístupné volání funkce člena key_comp.Obecně třeba pouze menší než srovnatelné zavést toto pořadí prvků: tak, aby, jakékoli dva prvky, ji může stanovit jsou rovnocenné (v tom smyslu, že ani menší než ostatní) nebo že jeden je menší než ostatní.Výsledkem objednávání mezi prvky nonequivalent.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í Pokud binárního predikátu nereflexivní antisymetrického a přenositelné a pokud rovnocennosti je přenosné, kde dva objekty x a y jsou definovány za 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 s ohledem na sebe) a odpovídající klíče budou od sebe indiscernible.

w5txk7zc.collapse_all(cs-cz,VS.110).gifKonstruktory

multimnožina

Konstrukce multiset je prázdné nebo je kopírovat všechny nebo část zadaného multiset.

w5txk7zc.collapse_all(cs-cz,VS.110).gifFunkce TypeDef

allocator_type

Definice typedef pro allocator pro třídy multiset objektu.

const_iterator

Typedef pro iterační obousměrné, kterou lze přečíst const prvek multiset.

const_pointer

Definice typedef pro ukazatel na const prvek multiset.

const_reference

Definice typedef odkaz na const prvku jsou uloženy v multiset pro čtení a provádění const operací.

const_reverse_iterator

Definice typedef pro obousměrný iterace, který můžete číst libovolný const prvek multiset.

difference_type

Typedef znaménkem počet prvků multiset v rozsahu mezi prvky odkazuje u iterátorů.

iterace

Definice typedef pro obousměrný iterace, který lze číst nebo upravovat libovolný prvek v multiset.

key_compare

Definice typedef funkci objektu, který lze porovnat dva klíče k určení relativní pořadí dvou prvků multiset.

key_type

Definice typedef funkci objektu, který lze porovnat dva klíče řazení určit relativní pořadí dvou prvků multiset.

ukazatel

Definice typedef pro ukazatel na prvek multiset.

odkaz

Definice typu odkazu na prvek uložené v multiset.

reverse_iterator

Definice typedef pro obousměrný iterace, mohou číst nebo upravovat prvek obrácené multiset.

size_type

Celé číslo bez znaménka typu, která představuje počet prvků multiset.

value_compare

Definice typedef funkci objektu, který lze porovnat dva prvky jako klíče řazení určit jejich relativní pořadí v multiset.

value_type

Definice typu, který popisuje objekt uložený jako element jako multiset jako hodnotu.

w5txk7zc.collapse_all(cs-cz,VS.110).gifMetody

začít

Vrátí iterace odkazující na první prvek multiset.

Vymazat

Vymaže všechny prvky multiset.

počet

Vrátí počet prvků multiset jehož klíč odpovídá zadán jako parametr klíč.

prázdné

Pokud testy multiset je prázdný.

Konec

Vrátí iterace, která odkazuje na umístění po posledním prvkem multiset.

equal_range

Vrátí dvojici u iterátorů.První iterace pár bodů na první prvek multiset s klíčem, který je větší než zadaný klíč.Druhý iterační pár bodů na první prvek multiset s klíčem, který je roven nebo větší než klíč.

Vymazat

Odstraní prvek nebo prvky v oblasti multiset od zadané pozice nebo odebere prvky, které odpovídají zadaným klíčem.

Najít

Vrátí iterace odkazující na umístění prvního prvku v multiset klíče rovná klávesa, která má.

get_allocator

Vrátí kopii allocator objekt, který slouží k sestavení multiset.

Vložit

Vloží prvek nebo prvky do oblasti multiset.

key_comp

Poskytuje funkci objektu, který lze porovnat dva klíče řazení určit relativní pořadí dvou prvků multiset.

lower_bound

Iterace se vrátí na první prvek multiset s klíčem, který je roven nebo větší než zadaný klíč.

max_size

Vrátí maximální délku multiset.

rbegin

Vrátí iterace odkazující na prvním prvkem obrácené multiset.

rend

Vrátí iterace odkazující na umístění následných posledního prvku obrácené multiset.

size

Vrátí počet prvků multiset.

Zaměnit

Výměny prvky dvou multisets.

upper_bound

Iterace se vrátí na první prvek multiset s klíčem, který je větší než zadaný klíč.

value_comp

Načte porovnání objektu, který používá pořadí hodnot prvek v kopii multiset.

Požadavky

Záhlaví: <set>

Obor názvů: std

Viz také

Referenční dokumentace

Bezpečnostní vlákno v Standardní knihovna C++

Standardní šablona knihovny

Další zdroje

Multimnožinové členů

<set> Členové