multiset Class
Standardowa biblioteka szablonu klasy multiset jest używana do przechowywania i pobierania danych z kolekcji, w którym wartości elementy zawarte nie musi być unikatowa i które służą jako wartości klucza, zgodnie z którymi automatycznie porządkowania danych.Nie można zmienić bezpośrednio wartości klucza element zestaw wielokrotny.Zamiast tego należy usunąć stare wartości i dodaje elementy z nowych wartości.
template <
class Key,
class Compare=less<Key>,
class Allocator=allocator<Key>
>
class multiset
Parametry
Klucz
Typ elementu danych mają być przechowywane w zestaw wielokrotny.Porównaj
Typ, który zawiera obiekt funkcji można porównać dwie wartości elementu jako klucze sortowania do określenia ich kolejności względnej w zestaw wielokrotny.Predykatu dwuelementowego mniej<Key> Wartość domyślna.Allocator
Typ, który reprezentuje obiekt przechowywane alokatora mieszczącą się szczegółowe informacje o alokacji i dezalokacji pamięci zestaw wielokrotny.Wartością domyślną jest programu przydzielania*<Key>.*
Uwagi
STL klasa multiset jest:
Asocjacyjną kontenerem, który jest kontenerem rozmiar, który obsługuje efektywnego pobierania wartości elementów na podstawie skojarzonego wartości kluczy.
Odwracalne, ponieważ zapewnia on Iteratory dwukierunkowy dostępu jej elementy do.
Posortowane, ponieważ jego elementy są uporządkowane według wartości kluczy w kontenerze zgodnie z określonym porównanie funkcji.
Wiele w znaczeniu, że jego elementy nie trzeba mieć unikatowe klucze tak, aby jedna wartość klucza może mieć wiele wartości elementu skojarzonego z nim.
Proste kontenera asocjacyjnych, ponieważ jego wartości elementów są jego wartości klucza.
Klasa szablonu, ponieważ zapewnia funkcjonalność jest rodzajowy i tak niezależnie od określonego typu danych zawartych jako elementy.Typ danych ma być używany zamiast określony jako parametr szablonu klasy wraz z porównania funkcji i przydzielania.
Iteratora, świadczone przez klasę multiset jest iteratora dwukierunkowe, ale funkcje składowe klasy wstawić i zestaw wielokrotny wersji, które jako parametry szablonu słabsze iteratora wejściowy, którego wymagania funkcjonalności są bardziej minimalne, niż te, które są gwarantowane przez klasę Iteratory dwukierunkowego.Pojęcia dotyczące różnych iteratora formularza rodziny powiązane przez udoskonalenia w ich funkcje.Każde pojęcie iteratora ma własny zestaw wymogów i algorytmów, które działają z nimi musi ograniczyć ich założeń, jakie wymagania określone przez ten typ iteratora.Można przyjąć, że wejściowe iteratora może usunąć odwołania do odwoływania się do jakiegoś obiektu, i że może zwiększana do następnego iteratora w sekwencji.Jest to minimalny zestaw funkcji, ale wystarczy, aby móc mówić przydatnie o zakres Iteratory [_First, _Last) w kontekście funkcje składowe tej klasy.
Wybór typu kontenera powinny być ogólnie na podstawie typu wyszukiwania i wstawianie wymagane przez aplikację.Pojemniki asocjacyjną są zoptymalizowane dla operacji wyszukiwania, wstawiania i usuwania.Funkcje składowe, wyraźnie obsługujących operacje te są skuteczne wykonywanie ich w określonym, średnia proporcjonalna do logarytmu liczby elementów w kontenerze.Wstawianie elementów unieważnia Iteratory nie i usuwanie elementów unieważnia tylko Iteratory, które miały wyraźnie wskazała na elementy usunięte.
Zestaw wielokrotny powinny być spełnia asocjacyjną kontener wybór, gdy warunki, kojarzenie wartości z ich klucze są przez aplikację.Elementy zestaw wielokrotny może być wiele i służyć jako własne klucze sortowania, więc nie są unikatowe klucze.Model dla tego typu Struktura jest uporządkowana lista, powiedz, wyrazy, w których wyrazy może występować więcej niż raz.Miał wiele wystąpień słów nie zezwolono, następnie zestaw byłaby struktury odpowiedni kontener.Jeśli unikatowe definicje zostały dołączone jako wartości do listy unikatowych słów kluczowych, mapy byłoby właściwe struktury zawierają dane.Jeśli zamiast definicje nie były unikatowe, Mapa wielokrotnego dopasowania byłoby wybranego kontenera.
Zestaw wielokrotny zamówienia sekwencji kontroluje przez wywołanie funkcji przechowywanej obiektu typu Compare.Ten obiekt przechowywanych jest porównanie funkcji można uzyskać dostęp, wywołując funkcję Członkowskie key_comp.Ogólnie rzecz biorąc, elementy muszą być jedynie mniej niż porównywalne do ustanowienia tej kolejności: tak, że biorąc pod uwagę dwa elementy, może być ustalona, albo że są równoważne (w tym sensie, że nie jest mniejsza niż drugi) lub jednym jest mniejsza od drugiej.Powoduje porządkowanie między elementami nonequivalent.Na nocie technicznych funkcja porównanie jest predykatu dwuelementowego, która powoduje ścisłe słabe zamawiania w sensie matematycznych, standardowy.Predykatu dwuelementowego f(x,y) to obiekt funkcji, który ma dwa obiekty argument x i y i zwrócenie true lub false.Kolejność nałożonych na zestaw jest ścisłe słabe, zamawiania predykatu dwuelementowego jest połączone ograniczenia niezwrotne, antysymetryczna i przechodnie i jeśli równoważność jest przechodnie, gdy dwa obiekty x i y są definiowane za równoważne, gdy oba f(x, y) i f(y, x) są fałszywe.Jeśli warunek silniejsze równości klucze zastępuje równoważności, kolejność staje się ogółem (w tym sensie, że wszystkie elementy są uporządkowane w odniesieniu do siebie) i klucze dopasowywane będą indiscernible się od siebie.
Konstruktory
Konstrukcje multiset oznacza to puste lub oznacza to kopii całości lub określonej części multiset. |
Definicje TypeDef
Typedef dla allocator klasy do multiset obiektu. |
|
Typedef dla iteratora dwukierunkowe, który można odczytać const element multiset. |
|
Typedef dla wskaźnika do const element multiset. |
|
Typedef odwołanie do const element przechowywane w multiset do odczytu i wykonywania const operacji. |
|
Typedef dla iteratora dwukierunkowe, który można odczytać const element multiset. |
|
Element TypeDef stanowi całkowita liczba elementów multiset w zakresie między elementami wskazywanej przez Iteratory. |
|
Typedef dla iteratora dwukierunkowe, który można odczytać lub zmodyfikować dowolnego elementu w multiset. |
|
Typedef dla obiektu funkcji, który można porównać dwa klucze do określania kolejności względnej dwóch elementów w multiset. |
|
Typedef dla obiektu funkcji, który można porównać dwa klucze sortowania do określenia kolejności względnej dwóch elementów w multiset. |
|
Typedef dla wskaźnik do elementu multiset. |
|
Typedef odwołanie do elementu, przechowywane w multiset. |
|
Typedef dla iteratora dwukierunkowe, który można odczytać lub zmodyfikować element w odwróconej multiset. |
|
Typ Liczba całkowita bez znaku, który może reprezentować liczbę elementów w multiset. |
|
Element typedef dla obiektu funkcji, który można porównać dwa elementy jako klucze sortowania do określenia ich względną kolejność, w multiset. |
|
Element typedef, który opisuje obiekt zapisany jako element jako multiset jako wartość. |
Metody
Zwraca iterację, który wskazuje pierwszy element w multiset. |
|
Usuwa wszystkie elementy multiset. |
|
Zwraca liczbę elementów w multiset której klucz pasuje do klucza, określony jako parametr. |
|
Badania, jeśli multiset jest pusta. |
|
Zwraca iterację, który wskazuje położenie po ostatnim elementem w multiset. |
|
Zwraca parę Iteratory.Pierwszy iteratora w punktach pary do pierwszego elementu w multiset z kluczem, który jest większa od określonego klucza.Drugi iteratora w punktach pary do pierwszego elementu w multiset z kluczem, który jest równy lub większy niż klucz. |
|
Usuwa element lub zakres elementów w multiset z określonych pozycjach lub usuwa elementy, które odpowiadają określonym kluczem. |
|
Zwraca iterację, który wskazuje lokalizację pierwszy element w multiset który ma klucza równej określonego klucza. |
|
Zwraca kopię allocator obiekt, który jest używany do konstruowania multiset. |
|
Wstawia element lub zakres elementów do multiset. |
|
Zawiera obiekt funkcji, który można porównać dwa klucze sortowania do określenia kolejności względnej dwóch elementów w multiset. |
|
Zwraca iterację do pierwszego elementu w multiset z kluczem, który jest równa lub większa od określonego klucza. |
|
Zwraca maksymalną długość multiset. |
|
Zwraca iterację, który wskazuje pierwszy element w odwróconej multiset. |
|
Zwraca iterację, prowadzącą do lokalizacji, w której uprawiane następczo ostatni element w odwróconej multiset. |
|
Zwraca liczbę elementów w multiset. |
|
Wymiany elementów dwóch multisets. |
|
Zwraca iterację do pierwszego elementu w multiset z kluczem, który jest większa od określonego klucza. |
|
Pobiera kopię obiektu porównania, który jest używany do kolejności wartości elementu multiset. |
Wymagania
Nagłówek: <set>
Obszar nazw: std
Zobacz też
Informacje
Bezpieczeństwo wątków w standardowa biblioteka języka C++
Standardowa biblioteka szablonu
Inne zasoby
Członkowie multiset
<set> Członkowie