Udostępnij za pośrednictwem


map Class

Używane do przechowywania i pobierania danych z kolekcji, w której każdy element jest para, która ma wartość danych i klucz sortowania.Wartość klucza jest unikatowy i jest używana do automatycznego sortowania danych.

Wartość elementu na mapie jest możliwa bezpośrednio.Wartość klucza jest stała i nie można zmienić.Zamiast wartości kluczy związanych z stare elementy, które muszą zostać usunięte i nowych wartości klucza musi zostać wstawiony do nowych elementów.

template <
   class Key, 
   class Type, 
   class Traits = less<Key>, 
   class Allocator=allocator<pair <const Key, Type> > 
>
class map

Parametry

  • Key
    Typ danych klucza mają być przechowywane na mapie.

  • Type
    Typ elementu danych mają być przechowywane na mapie.

  • Traits
    Typ, który zawiera obiekt funkcji, które można porównać dwie wartości elementów jako klucze sortowania do określenia ich względna kolejność w planie.Ten argument jest opcjonalny i predykatu dwuelementowego less<Key> jest wartością domyślną.

  • Allocator
    Typ, który reprezentuje obiekt przechowywanych programu przydzielania adresów, który mieści szczegółowe informacje dotyczące alokacji i dezalokacji pamięci mapy.This argument is optional and the default value is allocator<pair<constKey*,* Type> >.

Uwagi

Klasa mapę standardowy szablon biblioteki (STL) jest:

  • Kontener rozmiar ramek, które skutecznie pobiera wartości elementów skojarzonych wartości klucza.

  • Odwracalne, ponieważ zapewnia on Iteratory dwukierunkowy dostępu jego elementy do.

  • Posortowane, ponieważ jego elementy są uporządkowane według wartości kluczy, zgodnie z funkcją porównania określonego.

  • Unikatowy.ponieważ każdy z jej elementów musi mieć unikatowy klucz.

  • Para asocjacyjnej kontenera, ponieważ jego wartości danych elementów różnią się od jego wartości klucza.

  • Klasa szablonu, ponieważ zapewnia funkcjonalność jest rodzajowy i niezależnie od typu elementu lub klucz.Używane typy danych dla elementów i klucze są określone jako parametry w szablonie klasy wraz z porównania funkcji i przydzielania.

Sterująca udostępnianym przez klasę mapa jest sterująca dwukierunkowe, ale Wstaw i mapy funkcje korzystają z wersji, które biorą za parametry szablonu słabsze sterująca wejściowego, powodującym funkcjonalności są mniej niż zagwarantowanym przez klasę Iteratory dwukierunkowego.Pojęcia dotyczące różnych sterująca są powiązane przez kryteria definiowania ich funkcjonalność.Każde pojęcie sterująca ma swój własny zestaw wymogów i algorytmów, które z nim pracować, muszą być ograniczone przez tych wymogów.Iterację wejściowych może usunąć odwołania do odwoływania się do jakiegoś obiektu i może być zwiększany do następnego sterująca w sekwencji.

Zaleca się, że wybór typu kontener opiera się na rodzaj wyszukiwania i wstawianie, który jest wymagany przez aplikację.Kontenery asocjacyjne są zoptymalizowane pod kątem operacji wyszukiwania, wstawiania i usuwania.Funkcje składowe, które jawnie obsługują te operacje wykonać je w czasie, który jest średnio proporcjonalna do logarytmu liczby elementów w kontenerze.Wstawiania elementów unieważnia nie Iteratory, i usuwanie elementów unieważnia tylko Iteratory, które wyraźnie wskazywały usunięte elementy.

Firma Microsoft zaleca, aby mapy asocjacyjnej opakowania z wyboru po spełnieniu warunków, które przypisywać wartości do kluczy przez aplikację.Wzór tego rodzaju struktury jest uporządkowana lista unikatowo występujących słów kluczowych, z którymi skojarzono wartości ciągów, które zapewniają definicje.Jeśli pewne wyrazy są więcej niż jedną definicję poprawny, tak że klucz nie jest unikatowa, Mapa wielokrotnego dopasowania byłoby opakowania z wyboru.Jeśli są przechowywane tylko listę wyrazów, zestaw będzie odpowiedni kontener.Jeśli wiele wystąpień słowa są dozwolone, wielostopniowy mogłoby być właściwe.

Mapa Porządkuje elementy kontroluje poprzez wywołanie obiektu przechowywanej funkcji typu key_compare.Ten obiekt przechowywana jest funkcja porównania, który jest dostępny poprzez wywołanie key_comp metoda.Ogólnie rzecz biorąc każdymi dwoma elementami danego są porównywane w celu ustalenia, czy ktoś jest mniejsza niż inne lub czy są one równoważne.Jak wszystkie elementy są porównywane, tworzony jest uporządkowaną sekwencją nierównoważne elementów.

[!UWAGA]

Funkcja porównywania jest predykatu dwuelementowego, która powoduje ścisłe słabe kolejność w standardowych matematyczne znaczenie.Predykatu dwuelementowego f(x,y) to obiekt funkcji, który ma dwa obiekty argument x i yi zwracana wartość wynosząca true lub false.Kolejność nałożonych na zestawie jest ścisłe słaby zamawiania, jeśli predykatu dwuelementowego jest niezwrotne, antysymetryczna i przechodnie i jeśli równoważność jest przechodnie, gdzie obydwa obiekty x i y są definiowane za równoważne, gdy oba f(x,y) i f(y,x) są false.Jeśli warunek silniejsze równości pomiędzy kluczami zastępuje system równoważności, kolejność staje się całkowita (w tym sensie, że wszystkie elementy są uporządkowane w odniesieniu do jeden z pozostałych), a klucze dopasowane będzie niedostrzegalny z jednym z innych.

Elementy członkowskie

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

Mapa

Tworzy listę o określonym rozmiarze lub z elementami określonej wartości lub ze szczególnym allocator lub jako kopię niektóre inne mapy.

s44w4h2s.collapse_all(pl-pl,VS.110).gifDefinicje typów

allocator_type

Typedef dla allocator klasy dla obiektu mapy.

const_iterator

Typedef dla sterująca dwukierunkowe, który może odczytywać const elementu na mapie.

const_pointer

Typedef dla wskaźnika do const element w mapie.

const_reference

Typedef odwołanie do const element przechowywane na mapie do odczytu i wykonywania const operacji.

const_reverse_iterator

Typ, udostępniającego sterująca dwukierunkowe, które można odczytać żadnych const elementu na mapie.

difference_type

Aliasów całkowita liczba elementów mapy w zakresie między elementami wskazywanej przez Iteratory.

sterująca

Element typedef sterująca dwukierunkowe, który może odczytywać lub modyfikować dowolnego elementu na mapie.

key_compare

Element typedef obiekt funkcji, które można porównać dwa klucze sortowania do określenia względna kolejność dwóch elementów na mapie.

key_type

Element typedef klucz sortowania, przechowywanych w każdym elemencie mapy.

mapped_type

Element typedef dla danych przechowywanych w każdym elemencie mapy.

wskaźnik

Typedef dla wskaźnika do const element w mapie.

Odwołanie

Element typedef dla odwołania do elementu przechowywane na mapie.

reverse_iterator

Element typedef sterująca dwukierunkowe, który może odczytywać lub modyfikować elementu na mapie odwrócone.

size_type

Element TypeDef stanowi liczba całkowita bez znaku dla liczby elementów na mapie

value_type

Element typedef dla typu obiektu, przechowywane jako element na mapie.

s44w4h2s.collapse_all(pl-pl,VS.110).gifMetody

map::at

Wyszukuje element o określonej wartości klucza.

rozpocząć

Zwraca iterację wskazuje do pierwszego elementu na mapie.

map::cbegin

Zwraca wartość sterująca const, które wskazuje do pierwszego elementu na mapie.

map::cend

Zwraca argument stała sterująca przeszłości końcowy.

Wyczyść

Usuwa wszystkie elementy mapy.

Licznik

Zwraca liczbę elementów w mapie, której klucz pasuje do klucza, określony w parametrze.

map::crbegin

Zwraca wartość sterująca const, które wskazuje do pierwszego elementu na mapie odwrócone.

map::crend

Zwraca wartość sterująca const, wskazujące miejsce za ostatnim elementem w mapie odwrócone.

map::emplace

Wstawia element zbudowanych w miejscu do mapy.

map::emplace_hint

Wstawia element zbudowanych w miejscu do mapy z wskazówkę dotyczącą umieszczania.

pusty

Zwraca true Jeżeli mapa jest pusta.

koniec

Zwraca wartość sterująca przeszłości końcowy.

equal_range

Zwraca parę Iteratory.Pierwszy sterująca w punktach pary do pierwszego elementu w map przy użyciu klucza, która jest większa niż określonym kluczem.Drugi sterująca w punktach pary do pierwszego elementu w map przy użyciu klucza, który jest równy lub większy niż ten klucz.

wymazywanie

Usuwa element lub szereg elementów w mapie z określonych pozycjach.

Znajdź

Zwraca wartość wskazującą lokalizację elementu w mapę, która ma klucz równa określonego klucza iterację.

get_allocator

Zwraca kopię allocator obiekt, który jest używana do konstruowania mapy.

Wstaw

Wstawia element lub szereg elementów do mapy na określonym stanowisku.

key_comp

Przywraca kopię obiektu porównania, która używana kolejność klucze w mapie.

lower_bound

Zwraca iterację do pierwszego elementu na mapie, która ma wartości klucza, który jest równy lub większy niż w przypadku określonego klucza.

max_size

Zwraca maksymalną długość mapy.

rbegin

Zwraca iterację wskazuje do pierwszego elementu na mapie odwrócone.

rend

Zwraca wskazuje iterację do lokalizacji za ostatnim elementem w mapie odwrócone.

rozmiar

Zwraca liczbę elementów w mapie.

swap

Wymienia elementy dwie mapy.

upper_bound

Zwraca iterację do pierwszego elementu na mapie, który ma wartości klucza, który jest większy niż w określonym kluczem.

value_comp

Pobiera kopię obiektu porównania, który jest używany do wartości elementów zamówienia na mapie.

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

operatora]

Wstawia element do mapy określonej wartości klucza.

map::operator=

Zastępuje elementy mapie kopię inną mapę.

Wymagania

Nagłówek: <map>

Obszar nazw: std

Zobacz też

Informacje

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

Standardowa biblioteka szablonu

Inne zasoby

Mapa członków

<map> Członkowie