multimap Class
Standart Şablon Kütüphanesi multimap sınıfı, veri değeri ve sıralama anahtarı olan bir çift olduğu her öğe koleksiyondan veri alma ve depolama için kullanılır. Anahtarın değerini benzersiz olması gerekmez ve verileri otomatik olarak sipariş etmek için kullanılır. Bir birden çok eşleme içinde öğe değerinin, ancak değil ilişkili anahtar değerini, doğrudan değiştirilebilir. Bunun yerine, eski öğelerle ilişkili anahtar değerleri silinir ve yeni anahtar değerleri eklenen yeni öğelerle ilişkili olması gerekir.
template <
class Key,
class Type,
class Traits=less<Key>,
class Allocator=allocator<pair <const Key, Type> >
>
class multimap
Parametreler
Tuş
Birden çok eşleme içinde depolanan anahtar veri türü.Tür
Birden çok eşleme depolanmak üzere öğe veri türü.Traits
Sağlayan bir işlev nesnesi türü birden çok eşleme kendi göreli sırasını belirlemek için sıralama anahtarları olarak iki öğe değerleri karşılaştırabilirsiniz. İkili karşılaştırma daha az*<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ü. Bu bağımsız değişkeni isteğe bağlıdır ve varsayılan değer olan ayırıcı*<*pair *<*const anahtar, yazın > >.
Notlar
stl multimap sınıfı
Değişken boyutu kapsayıcı öğe değerlerinin verimli alınmasını destekleyen bir ilişkili anahtar değerine dayalı bir ilişkilendirilebilir container.
Geri alınamaz, çünkü onun öğelerine erişmek için çift yönlü yineleyiciler sağlar.
Sıralanmış, çünkü kendi öğeleri belirtilen karşılaştırma işlevi uygun olarak kapsayıcı içindeki anahtar değerlerine göre sıralanır.
Birden çok, böylece birçok öğe veri değerleri kendisiyle ilişkilendirilmiş bir anahtar değeri olabilir öğelerini benzersiz bir anahtar olması gerekmez çünkü.
İlişkilendirilebilir çifti 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 böylece bağımsız olarak belirli öğelerini veya anahtarları olarak yer alan veri türü. Öğeleri ve anahtarları için kullanılacak veri türleri yerine, parametre sınıf şablonu birlikte karşılaştırma işlevi ve ayırıcı olarak belirtilir.
Map sınıfı tarafından sağlanan sınıf üye işlevlerini ancak bir çift yönlü Yineleyici yineleyicidir Ekle ve birden çok eşleme olan işlevselliği gereksinimleri çift yönlü yineleyiciler sınıfı tarafından garanti olandan daha az zayıf giriş Yineleyici, şablon parametresi ele sürümlere sahip. Bir aile tarafından iyileştirme işlevlerine içinde ilgili farklı Yineleyici kavramları oluştururlar. Her Yineleyici kavramı kendi gereksinimlerine sahiptir ve bunlarla algoritmaları varsayımlarıyla Yineleyici türü tarafından sağlanan gereksinimlerine sınırlamak gerekir. Bu, bazı nesnesine başvurmak için bir giriş Yineleyici veta ve bunun için sıradaki sonraki Yineleyici 'er olduğunu kabul. Bu işlevselliği en az sayıda, ancak satıcının yineleyiciler bir dizi hakkında konuşmak yapabilmek için yeterli olan [_First, _Last) sınıfının üye işlevleri bağlamında.
Kapsayıcı türü seçimi genel arama türüne göre ve uygulama tarafından gerekli ekleme. İ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 verimli logaritması konteynerdeki öğelerin sayısını orantılı ortalama bir saat içinde gerçekleştirilmeden işlevlerdir. Öğeleri ekleme yok yineleyiciler geçersiz kılar ve yalnızca özellikle sırasında kaldırılan öğeleri işaret ettiği yineleyiciler öğeleri kaldırma geçersiz kılar.
Birden çok eşleme uygulama tarafından kendi anahtarlarla değerleri ilişkilendirme koşullar karşılandığında istediği ilişkilendirilebilir kapsayıcı olmalıdır. Bir bu tür bir yapı için anahtar sözcükler ile ilişkili dize değerleri sağlayan, say, tanımları, sıralı bir listesini burada sözcükleri her zaman benzersiz olarak tanımlanmamış modeldir. Daha sonra benzersiz anahtarlar, bunun yerine, anahtar sözcükleri benzersiz olarak tanımlanmış olan, bir harita kapsayıcısını seçim olacaktır. Sonra diğer taraftan, yalnızca sözcüklerin listesini depolanmakta, bir kapsayıcı doğru olacaktır. Sonra birden fazla sözcük izin verilseydi, bir Kü uygun kapsayıcı yapıyı olacaktır.
Birden çok eşleme sırasını denetler saklı işlev nesne türü çağırarak siparişleri key_compare. Bu saklı nesne üye işlevini çağırarak erişilebilen bir karşılaştırma işlevi olan key_comp. Genel olarak, öğeleri yalnızca küçüktür bu sırayı oluşturmak üzere karşılaştırılabilir olması: herhangi iki öğe verilen böylece, onu eşdeğer (içinde her ikisi de diğer değerinden küçük anlamda) ya da diğer daha az olduğunu belirlenebilir. Bu bir nonequivalent öğeleri sıralamada sonuçlanır. Daha fazla Teknik Not üzerinde katı 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 y ve 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 ne zaman eşdeğer olarak tanımlanmış y hem de f(x, y) ve f(y, x) yanlış ise. Anahtarlar arasındaki eşitlik daha güçlü durumu, eşdeğerlik geçiyorsa, sıralama (birbirlerine göre sıralanmış tüm öğeleri algılama) cinsinden toplam haline gelir ve eşleşen anahtarları birbirinden indiscernible.
Üyeler
Oluşturucular
Oluşturan bir multimap yani boş veya diğer bir deyişle bir kopyası tüm veya bazı diğer parçası multimap. |
Tür tanımları
Temsil eden bir tür allocator için sınıf multimap nesne. |
|
Çift yönlü Yineleyici, can sağlayan bir tür okuma bir const öğesinde multimap. |
|
Bir işaretçi sağlayan bir tür bir const öğesinde bir multimap. |
|
Bir başvuru sağlayan bir tür bir const öğesinde depolanan bir multimap okumak ve gerçekleştirmek için const işlemleri. |
|
Herhangi bir çift yönlü Yineleyici, can sağlayan bir tür okuma const öğesinde multimap. |
|
İşaretli tamsayı türü öğelerinin sayısını temsil etmek için kullanılan bir multimap yineleyiciler göre sıralanmasını öğeler arasındaki aralık. |
|
Öğeleri aynı içinde başvuran iki yineleyiciler arasındaki fark sağlayan bir türü multimap. |
|
Göreli iki öğelerin sırasını belirlemek için iki sýralama anahtarýný karşılaştıran işlev nesne sağlayan bir türü multimap. |
|
Her bir öğesi oluşturan sıralama anahtar nesneyi tanımlayan bir tür multimap. |
|
Depolanan veri türünü temsil eden bir tür bir multimap. |
|
Bir işaretçi sağlayan bir tür bir const öğesinde bir multimap. |
|
Depolanan bir öğeye başvuru sağlayan bir tür bir multimap. |
|
Çift yönlü Yineleyici sağlayan bir tür okuma veya bir öğe tersine çevrilmiş bir değişiklik multimap. |
|
Bir işaretçi sağlayan bir işaretsiz tamsayı türü bir const öğesinde bir multimap. |
|
İki öğe kendi göreli sırada belirlemek için sıralama anahtarları olarak karşılaştırabilirsiniz bir işlev nesnesi sağlayan bir türü multimap. |
Üye işlevleri
İlk öğe adresleme bir yineleyici döndürür multimap. |
|
İlk öğe adresleme const bir yineleyici döndürür multimap. |
|
İzleyen'deki son öğe konumu gideren bir const Yineleyici döndürür bir multimap. |
|
Tüm öğeleri siler bir multimap. |
|
İçindeki öğelerin sayısını verir bir multimap parametresi tarafından belirtilen anahtar anahtar eşleşir. |
|
İlk öğe tersine çevrilmiş bir adresleme const bir yineleyici döndürür multimap. |
|
Tersine çevrilmiş bir'deki son öğe izleyen konum gideren bir const Yineleyici döndürür multimap. |
|
Yerlerine içinde yapılandırılan bir öğe ekler bir multimap. |
|
Yerlerine içinde yapılandırılan bir öğe ekler bir multimap, bir yerleşimi İpucu ile |
|
Testleri, bir multimap boş. |
|
İzleyen'deki son öğe konumu gideren bir yineleyici döndürür bir multimap. |
|
Öğenin anahtarı belirtilen değerle eşleştiği aralığı öğeleri bulur. |
|
Bir öğe veya öğeleri aralığı kaldırır bir multimap belirtilen pozisyonları veya belirtilen anahtar eşleşen öğeleri kaldırır. |
|
İlk öğeye konumunu adresleme bir yineleyici döndürür bir multimap , belirtilen anahtar için eşdeğer bir anahtara sahip. |
|
Bir kopyasını verir allocator nesne oluşturmak için kullanılan multimap. |
|
Bir öğe veya öğe aralığı ekler bir multimap. |
|
Sipariş anahtarları için kullanılan karşılaştırma nesnenin bir kopyasını alır bir multimap. |
|
İlk öğe için bir yineleyici döndürür bir multimap , belirtilen anahtar daha büyük veya eşit olan bir anahtara sahip. |
|
En fazla uzunluğunu döner multimap. |
|
İlk öğe tersine çevrilmiş bir adresleme bir yineleyici döndürür multimap. |
|
Tersine çevrilmiş bir'deki son öğe izleyen konum gideren bir yineleyici döndürür multimap. |
|
İçindeki öğelerin sayısını verir multimap. |
|
İki öğe değişimi multimaps. |
|
İlk öğe için bir yineleyici döndürür bir multimap , belirtilen anahtar büyük bir anahtarla. |
|
Üye işlevi öğelerin sırasını belirleyen bir işlevi nesnesi döndüren bir multimap anahtar değerleri karşılaştırarak. |
İşleçler
Öğeleri değiştirir bir multimap başka bir kopyası ile multimap. |
Gereksinimler
Başlık: <map>
Ad alanı: std
(Anahtar, değeri) çiftleri bir birden çok eşleme içinde depolanmış olan nesne türü pair. <map> Tarafından otomatik olarak dahil <utility> başlık çifti sınıf gerektirir.
Ayrıca bkz.
Başvuru
Standart C++ Kitaplığı'nda iş parçacığı güvenliği