Udostępnij za pośrednictwem


set Class

Zestaw STL kontenera klasy jest używany do przechowywania i pobierania danych z kolekcji, w którym wartości elementy zawarte są unikatowe i służyć jako wartości klucza, według których automatycznie porządkowania danych.Nie można zmienić bezpośrednio wartości elementu zestawu.Należy usunąć stare wartości i wstawianie elementów z nowymi wartościami.

template <
    class Key, 
    class Traits=less<Key>, 
    class Allocator=allocator<Key> 
>
class set

Parametry

  • Key
    Typ elementu danych mają być przechowywane w zestawie.

  • Traits
    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 zestawie.Ten argument jest opcjonalny, a predykatu dwuelementowego mniej <Key> jest wartością domyślną.

  • Allocator
    Typ, który reprezentuje obiekt przechowywane alokatora mieszczącą się szczegółowe informacje o alokacji i dezalokacji pamięci zestawu.Ten argument jest opcjonalny i domyślnie jest to przydzielania*<Key>.*

Uwagi

Zestaw STL jest:

  • Asocjacyjnej kontenera, w którym kontener rozmiar zmiennej, obsługujący efektywnego pobierania wartości elementów oparte na skojarzone wartość klucza.Ponadto jest proste kontenera asocjacyjnych, ponieważ jego wartości elementu są jego wartości klucza.

  • Odwracalne, ponieważ zapewnia iteratora 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.

  • Unikatowe w tym sensie, że każdy z jej elementów musi mieć unikatowy klucz.Ponieważ zestaw jest również proste kontenera asocjacyjnych, jego elementy są także unikatowe.

Zestaw opisana jako klasa szablonu, ponieważ funkcjonalność, którą zapewnia jest rodzajowa i niezależne od określonego typu danych zawartych jako elementy.Typ danych ma być używany natomiast określony jako parametr szablonu klasy oraz porównania funkcji i przydzielania.

Wybór typu kontenera powinny być ogólnie na podstawie typu wyszukiwania i wstawianie wymagane przez aplikację.Pojemniki asocjacyjnej są zoptymalizowane dla operacji wyszukiwania, wstawiania i usuwania.Funkcje składowe, wyraźnie obsługujących te operacje są skuteczne wykonywanie ich w czasie, który jest ś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 były wyraźnie wskazywanej usunięte elementy.

Zestaw powinien być asocjacyjnej kontener wyboru podczas kojarzenia z kluczami ich wartości są spełnione przez aplikację.Elementy zestawu są unikatowe i służą jako własne klucze sortowania.Model dla tego typu Struktura jest uporządkowana lista, powiedz, wyrazy, w których wyrazy może wystąpić tylko raz.Jeżeli zezwolono wielu wystąpień słowa, zestaw wielokrotny byłoby struktury odpowiedni kontener.Jeśli trzeba dołączyć do listy słów kluczowych unikatowe wartości mapy byłoby właściwe struktury zawierają dane.Jeśli zamiast klucze nie są unikatowe, Mapa wielokrotnego dopasowania byłoby wybranego kontenera.

Zestaw zamówień sekwencji kontroluje przez wywołanie funkcji przechowywane obiektu typu key_compare.Ten obiekt przechowywanych jest porównanie funkcji można uzyskać dostęp, wywołując funkcję Członkowskie key_comp.Ogólne potrzeby elementów jedynie mniej niż porównywalne do ustanowienia tej kolejności tak, że biorąc pod uwagę dwa elementy mogą określone, są równoważne (w tym sensie, że nie jest mniejsza niż drugi) albo jednym jest mniejsza niż inne.Powoduje porządkowanie między elementami nonequivalent.Na uwagi techniczne funkcja porównanie jest predykatu dwuelementowego, który wywołuje ścisłe słabe zamawiania w sensie matematycznych, standard.Predykatu dwuelementowego f(x, y) to obiekt funkcji, który ma dwa obiekty argument x i y i wartość zwracana true lub false.Kolejność nałożonych na zestaw jest ścisłe słabe, zamawiania predykatu dwuelementowego jest niezwrotne, antysymetryczna i przechodnie i jeśli równoważność jest przechodnie, gdy dwa obiekty x i y są zdefiniowane jako równoważne, gdy oba f(x, y) i f(y, x) są fałszywe.Jeśli warunek silniejsze równości między klawisze zastępuje równoważności, kolejność staje się ogółem (w tym sensie, że wszystkie elementy są uporządkowane względem siebie), a klucze dopasowywane będą indiscernible się od siebie.

Iteratora dostarczone przez klasę zestawu jest iteratora dwukierunkowe, ale funkcje składowe klasy Wstaw i set wersji, które jako parametry szablonu słabsze iteratora wejściowe, których wymagania funkcjonalności są minimalne więcej niż gwarantowana przez klasę Iteratory dwukierunkowego.Pojęcia dotyczące różnych iteratora formularza rodziny powiązane przez uściślenia ich funkcji.Każde pojęcie iteratora ma własny zestaw wymogów i algorytmów pracować z nimi musi ograniczyć ich założeń, jakie wymagania określone przez ten typ iteratora.Może założyć, że wejściowe iteratora mogą usunąć odwołania do odwoływania się do jakiegoś obiektu i może ona 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.

e8wh7665.collapse_all(pl-pl,VS.110).gifKonstruktory

zestaw

Tworzy zestaw jest pusty lub kopii całości lub części niektóre inne zestawu.

e8wh7665.collapse_all(pl-pl,VS.110).gifDefinicje TypeDef

allocator_type

Typ, który reprezentuje allocator klasy obiektu zestawu.

const_iterator

Typ, który zapewnia iteratora dwukierunkowy tego można odczytać const element w zestawie.

const_pointer

Typ, który zawiera wskaźnik do const element w zestawie.

const_reference

Typ, który zawiera odniesienie do const przechowywane w zestawie do odczytu i wykonywania elementu const operacji.

const_reverse_iterator

Typ, który zapewnia iteratora dwukierunkowy tego można odczytać const element w zestawie.

difference_type

Typ Liczba całkowita ze znakiem, używany do reprezentowania liczbę elementów zestawu w zakresie między elementami wskazywanej przez Iteratory.

iteratora

Typ, który zapewnia iteratora dwukierunkowe, który można odczytać lub zmodyfikować dowolnego elementu w zestawie.

key_compare

Typ, który zawiera obiekt funkcji można porównać dwa klucze sortowania do określenia kolejności względnej dwóch elementów zestawu.

key_type

Typ opisuje obiekt zapisany jako elementu zestawu w charakterze klucza sortowania.

wskaźnik

Typ, który zawiera wskaźnik do elementu w zestawie.

Odwołanie

Typ, który zawiera odwołanie do elementu przechowywane w zestawie.

reverse_iterator

Typ, który zapewnia iteratora dwukierunkowe, który mogą odczytywać lub modyfikować elementu zestawu wycofane.

size_type

Typ Liczba całkowita bez znaku, który może reprezentować liczbę elementów w zestawie.

value_compare

Typ, który zawiera obiekt funkcji można porównać dwa elementy, aby określić kolejność ich względne, w zestawie.

value_type

Typ opisuje obiekt zapisany jako element zestawu jako wartość.

e8wh7665.collapse_all(pl-pl,VS.110).gifFunkcje składowe

Rozpoczęcie

Zwraca iterację, który dotyczy pierwszy element w zestawie.

cbegin

Zwraca iteratora const, który dotyczy pierwszy element w zestawie.

cend

Zwraca iteratora const, likwidującą lokalizacji przejmującej ostatni element w zestawie.

Wyczyść

Usuwa wszystkie elementy zestawu.

Licznik

Zwraca liczbę elementów w zestawie, której klucz pasuje do klucza określonego przez parametr.

crbegin

Zwraca iteratora const, pierwszy element w zestawie wycofanej adresowania.

użytkownika: crend

Zwraca iteratora const, likwidującą lokalizacji przejmującej ostatni element w zestawie wycofane.

emplace

Wstawia element zbudowanych w miejscu do zestawu.

emplace_hint

Wstawia element zbudowanych w miejscu do zestawu z Wskazówka położenie.

pusty

Testy, jeśli zestaw jest pusty.

koniec

Zwraca iterację likwidującą lokalizacji przejmującej ostatni element w zestawie.

equal_range

Zwraca parę Iteratory odpowiednio do pierwszego elementu zestawu z kluczem, który jest większy niż określony klucz i pierwszy element w zestawie jest równa lub większa niż klucz kluczem.

Wymaż

Usuwa element lub zakres elementów w zestawie z określonych pozycjach lub usuwa elementy zgodne z określonego klucza.

Znajdź

Zwraca iterację adresowania lokalizację elementu zestawu, który ma klucz równoważne do określonego klucza.

get_allocator

Zwraca kopię allocator obiektów wykorzystywanych do konstruowania zestawu.

Wstaw

Wstawia element lub zakres elementów do zestawu.

key_comp

Pobiera kopię obiektu porównanie używane do kolejności kluczy w zestawie.

lower_bound

Zwraca pierwszy element w zestawie iterację z kluczem, który jest równa lub większa od określonego klucza.

max_size

Zwraca maksymalną długość zestawu.

rbegin

Zwraca iterację adresowania pierwszy element w zestawie wycofane.

rend

Zwraca iterację likwidującą lokalizacji przejmującej ostatni element w zestawie wycofane.

rozmiar

Zwraca liczbę elementów w zestawie.

Zamień

Wymiany elementów dwa zestawy.

upper_bound

Zwraca pierwszy element w zestawie iterację z kluczem, który jest większy niż określonego klucza.

value_comp

Pobiera kopię obiektu porównanie używane do wartości elementu zamówienia w zestawie.

e8wh7665.collapse_all(pl-pl,VS.110).gifOperatory

operator =

Zastępuje kopię inny zestaw elementów zestawu.

Wymagania

Nagłówek: <set>

Obszar nazw: std

Zobacz też

Informacje

Bezpieczeństwo wątków w standardowa biblioteka języka C++

Standardowa biblioteka szablonu