Aracılığıyla paylaş


map Class

Her öğe bir veri değeri ve sıralama anahtarı olan bir çift olduğu bir koleksiyon veri alma ve depolama için kullanılır. Anahtarın değerini benzersizdir ve verileri otomatik olarak sıralamak için kullanılır.

Haritasında öğenin değerini doğrudan değiştirilebilir. Anahtar değeri bir sabit ve değiştirilemez. Bunun yerine, eski öğelerle ilişkili anahtar değerleri silinmeli ve yeni anahtar değerleri için yeni öğeler eklenir.

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

Parametreler

  • Key
    Eşleme içinde depolanan anahtar veri türü.

  • Type
    Eşleme içinde depolanan öğe veri türü.

  • Traits
    Sağlayan bir işlev nesne türü eşlemesindeki kendi göreli sırasını belirlemek için sıralama anahtarları olarak iki öğe değerleri karşılaştırabilirsiniz. Bu bağımsız değişkeni isteğe bağlıdır ve ikili karşılaştırma less<Key> varsayılan değerdir.

  • Allocator
    Harita 's ayırma ve bellek ayırmayı kaldırma hakkındaki ayrıntıları saklar saklı ayırıcı nesnesini gösteren türü. This argument is optional and the default value is allocator<pair<constKey*,* Type> >.

Notlar

Standart Şablon kitaplığı (stl) eşleme sınıfıdır:

  • Bir kapsayıcı öğe değerlerinin ilişkili anahtar değerlerine dayalı verimli bir şekilde alır değişken boyutu.

  • Geri alınamaz, çünkü onun öğelerine erişmek için çift yönlü yineleyiciler sağlar.

  • Sıralanan öğeleri anahtar değerlerine göre belirtilen karşılaştırma işlevi tarafından sipariş edilen çünkü.

  • Benzersiz. alt öğelerin her biri benzersiz bir anahtar olması gerekir çünkü.

  • Çifti ilişkilendirilebilir bir kapsayıcı öğe veri değerlerini anahtar değerleri birbirinden farklı olduğundan.

  • Bir şablon sınıf işlevlerini sağladığından, genel ve bağımsız öğe veya anahtar türü. Veri türleri öğeler için kullanılan ve anahtarlar karşılaştırma işlevi ve ayırıcısı ile birlikte sınıf şablonu parametre olarak belirtilir.

Map sınıfı tarafından sağlanan bir çift yönlü Yineleyici yineleyicidir ancak Ekle ve Harita sınıfı üye işlevleri olan işlevselliği gereksinimlerdir çift yönlü yineleyiciler sınıfı tarafından garanti olandan daha az zayıf giriş Yineleyici, şablon parametresi ele sürümleri vardır. Farklı Yineleyici kavramları tarafından iyileştirme işlevlerine ilişkilidir. Her Yineleyici kavramı kendi gereksinimlerine sahiptir ve çalışma algoritmaları tarafından söz konusu gereksinimleri sınırlı olabilir. Giriş bir yineleyici bazı nesnesine başvurmak için geri ve sıradaki sonraki Yineleyici artar.

Arama türü seçimi kapsayıcı türü, temel ve ekleme, uygulama tarafından gerekli öneririz. İlişkilendirilebilir kapsayıcıları arama, ekleme ve kaldırma işlemleri için optimize edilmiştir. Bu işlemler açıkça destekleyen üye işlevleri bunları ortalama logaritması konteynerdeki öğelerin sayısını orantılı bir saat içinde gerçekleştirin. Öğeleri ekleme yok yineleyiciler geçersiz kılar ve yalnızca özel olarak kaldırılan öğelere işaret ettiği yineleyiciler öğeleri kaldırma geçersiz kılar.

Uygulama tarafından değerleri anahtarlarla ilişkilendirmek koşullar karşılandığında istediği ilişkilendirilebilir kapsayıcı Haritası oluşturmanız önerilir. Sıralı bir listesini bu tür bir yapı modeldir ilişkili olan benzersiz olarak tekrarlanan anahtar sözcükler dize değerlerinin tanımları sağlar. Sonra dolayısıyla bu anahtarın benzersiz bir sözcüğün birden fazla doğru tanımı varsa, birden çok eşleme bir kapsayıcı istediği olacaktır. Sonra bir grup yalnızca sözcüklerin listesini saklanıyorsa, uygun kapsayıcıyı olacaktır. Birden fazla sözcük izin verilirse, bir Kü uygun olacaktır.

Harita öğeleri denetleyen işlev saklı nesne türü çağırarak siparişleri key_compare. Bu saklı nesne arama yoluyla erişilen bir karşılaştırma işlevi olan key_comp yöntem. Genel olarak, biri diğerinden daha az olup olmadığı veya eşdeğer olup olmadığını belirlemek için herhangi iki belirli öğe karşılaştırılır. Tüm öğeleri karşılaştırıldığında gibi sıralı bir eşdeğer olmayan öğeler oluşturulur.

Not

Sıkı bir zayıf standart matematiksel anlamda sipariş işleminiz ikili bir karşılaştırma karşılaştırma işlevidir.İkili karşılaştırma f(x,y) , iki bağımsız değişken nesneleri olan bir işlev nesnesi x ve yve dönüş değeri true veya false.İkili karşılaştırma dönüşsüz, ters ve geçişli ve eşdeğerlik geçişli, iki yerde nesneleri sıralamaya sıkı bir zayıf olduğu bir kümesi üzerinde uygulanan sıralama x ve y ne zaman eşdeğer olarak tanımlanan her ikisi de f(x,y) ve f(y,x) olan false.Anahtarlar arasındaki eşitlik daha güçlü durumu, eşdeğerlik geçiyorsa, sıralama (biri ile ilgili diğer tüm öğeleri sipariş algılama) cinsinden toplam olur ve eşleşen anahtarları birinden diğer indiscernible.

Üyeler

s44w4h2s.collapse_all(tr-tr,VS.110).gifOluşturucular

eşleme

Belirli bir büyüklükte veya öğeleri belirli bir değer veya belirli bir liste oluşturur allocator veya bir kopyasını başka bir eşleme.

s44w4h2s.collapse_all(tr-tr,VS.110).gifTür tanımları

allocator_type

İçin bir typedef allocator harita nesnesi için sınıf.

const_iterator

Bir typedef okuyabilen bir çift yönlü Yineleyici için bir const öğe.

const_pointer

Bir typedef bir işaretçi için bir const bir öğe.

const_reference

Başvuru için bir typedef bir const bir harita okuma ve gerçekleştirmek için depolanan öğe const işlemleri.

const_reverse_iterator

Herhangi bir çift yönlü Yineleyici, can sağlayan bir tür okuma const öğe.

difference_type

İşaretli tamsayı typedef yineleyiciler göre sıralanmasını öğeler arasındaki aralık içinde bir harita öğelerinin sayısı.

Yineleyici

Bir çift yönlü Yineleyici okumak veya herhangi bir harita öğesinde değiştirmek için typedef.

key_compare

İki öğe eşleme içinde göreli sırasını belirlemek için iki sýralama anahtarýný karşılaştıran işlev nesnesi için bir typedef.

key_type

Her eşleme ögesinde depolanan sıralama anahtarı için bir typedef.

mapped_type

Her bir harita ögesinde depolanan veriler için bir typedef.

İşaretçi

Bir typedef bir işaretçi için bir const bir öğe.

başvuru

Bir harita içinde depolanan bir öğeye başvuru için typedef.

reverse_iterator

Okuma veya bir öğe tersine çevrilmiş bir harita değiştirmek bir çift yönlü Yineleyici için typedef.

size_type

Bir eşleme içinde öğe sayısı için bir işaretsiz tamsayı typedef

value_type

Bir bir öğe olarak saklanan nesne türüne ilişkin bir typedef.

s44w4h2s.collapse_all(tr-tr,VS.110).gifYöntemler

map::at

Belirtilen bir anahtar değeri olan bir öğe bulur.

başlamak

Bir yineleyici Haritası'nda ilk öğeye işaret verir.

map::cbegin

İlk öğe gösteren sabit bir yineleyici döndürür.

map::cend

Bir const geçmiş-uç Yineleyici döndürür.

Temizle

Bir harita tüm öğeleri siler.

count

Anahtar eşleşen parametre içinde belirtilen anahtar eşleme içinde öğe sayısını döndürür.

map::crbegin

Tersine çevrilmiş bir harita ilk öğe gösteren sabit bir yineleyici döndürür.

map::crend

Ters işlem eşleminde son öğesinden sonra bir konuma işaret eden bir const Yineleyici döndürür.

map::emplace

Eşlemenin içine yerleştirmek için oluşturulmuş bir öğe ekler.

map::emplace_hint

Yerleştirme İpucu ile harita içine yerleştirmek için oluşturulmuş bir öğe ekler.

boş

Döner true bir eşleme boş ise.

Son

Geçmiş-uç Yineleyici döndürür.

equal_range

Yineleyicilerde bir Çift döndürür. Çift nokta ilk öğe için ilk Yineleyici bir map ile belirtilen anahtar büyük bir anahtar. Çift nokta ilk öğe için ikinci Yineleyici map anahtar daha büyük veya eşit olan bir anahtara sahip.

silme

Bir öğe veya öğe aralığını belirtilen konumlardan harita kaldırır.

find

Bir öğe, belirtilen anahtar için anahtar bir eşit olan bir konuma işaret eden bir yineleyici döndürür.

get_allocator

Bir kopyasını verir allocator harita oluşturmak için kullanılan nesne.

Ekle

Bir öğe veya öğe aralığı Haritası belirlenen konuma ekler.

key_comp

Harita sipariş anahtarları için kullanılan karşılaştırma nesnenin bir kopyasını döndürür.

lower_bound

İlk öğe, belirtilen anahtar daha büyük veya eşit olan bir anahtar değeri olan bir eşleme için bir yineleyici döndürür.

max_size

Haritanın en fazla uzunluğunu döndürür.

rbegin

Bir yineleyici işaret tersine çevrilmiş bir harita ilk öğeyi döner.

rend

Bir yineleyici işaret ters işlem eşleminde son öğesinden sonra konumuna geri döner.

boyutu

Eşleme içinde öğe sayısını döndürür.

takas

İki eşleme öğeleri değiştirir.

upper_bound

Belirtilen anahtar büyük bir anahtar değeri olan bir harita ilk öğe için bir yineleyici döndürür.

value_comp

Harita sipariş öğesi değerleri için kullanılan karşılaştırma nesnenin bir kopyasını alır.

s44w4h2s.collapse_all(tr-tr,VS.110).gifİşleçler

operator]

Belirtilen bir anahtar değeri ile bir harita bir öğe ekler.

map::operator=

Harita öğelerini başka bir eşleme bir kopyası ile değiştirir.

Gereksinimler

Başlık: <map>

Ad alanı: std

Ayrıca bkz.

Başvuru

Standart C++ Kitaplığı'nda iş parçacığı güvenliği

Standart Şablon Kütüphanesi

Diğer Kaynaklar

Harita üyeler

<map> Üyeler