Aracılığıyla paylaş


multiset Class

Multiset sınıfı, içerdiği öğeleri değerlerin benzersiz olması gerekmez ve hangi göre verileri otomatik olarak sipariş edilen anahtar değerleri verdikleri bir koleksiyondan veri alma ve depolama için kullanılan standart Şablon Kütüphanesi. Bir öðenin bir multiset anahtar değeri doğrudan değiştirilemez. Bunun yerine, eski değerleri silinir ve yeni değerlerle öğeler eklenir.

template <
   class Key, 
   class Compare=less<Key>, 
   class Allocator=allocator<Key> 
>
class multiset

Parametreler

  • Tuş
    Multiset kaydedilecek öğe veri türü.

  • Karşılaştırma
    Sağlayan bir işlev nesne türü multiset bunların göreli çalışma sırasını belirlemek için sıralama anahtarları olarak iki öğe değerleri karşılaştırabilirsiniz. İkili karşılaştırma az<Key> varsayılan değerdir.

  • Allocator
    Multiset's ayırma ve bellek ayırmayı kaldırma hakkındaki ayrıntıları saklar saklı ayırıcı nesnesini gösteren türü. Varsayılan değer ayırıcı*<Key>.*

Notlar

stl multiset sınıfıdır:

  • Verimli bir ilişkili anahtar değerine dayalı öğe değerlerinin alınmasını destekler bir değişken boyutu kapsayıcı olan bir ilişkilendirilebilir kapsayıcı.

  • Geri alınamaz, çünkü çift yönlü Yineleyicilerde öğelerini erişim sağlar.

  • Sıralanmış, çünkü öğelerini belirtilen karşılaştırma işlevi ile kapsayıcı içindeki anahtar değerlerine göre sıralanır.

  • Birden çok ilişkili birçok öğe değerlerinin bir anahtar değeri olabilir böylece öğelerini benzersiz anahtarlar olması gerekmez algılama içinde.

  • Basit ilişkilendirilebilir bir kapsayıcı öğe değerlerini anahtar değerlerini olduğundan.

  • Bir şablon sınıf işlevi sağladığından genel ve böylece bağımsız öğeler içerdiği verilerin belirli türde. Kullanılacak veri türü yerine, karşılaştırma işlevi ve ayırıcı ile sınıf şablonu parametresinde belirtilen.

Multiset sınıfı tarafından sağlanan Yineleyici sınıf üye işlevlerini ancak bir çift yönlü Yineleyici olan Ekle ve multiset çift yönlü Yineleyicilerde sınıfı tarafından garanti den daha az olan işlevselliği gereksinimleri zayıf giriş Yineleyici şablona parametre olarak ele sürümlere sahip. Farklı bir yineleyici kavramları kendi işlevleri tarafından sadeleştirmeler ilgili aile oluştururlar. Her Yineleyici kavramı kendi gereksinimleri vardır ve bunlarla çalışmak algoritmaları varsayımlarıyla bu tür bir yineleyici tarafından sağlanan gereksinimlerine sınırlandırmak gerekir. Yeniden yönlendiricide başvuru Giriş bir yineleyici bazı nesnesine başvurmak için yapıldı olduğunu ve bunun için sıradaki sonraki Yineleyici 'er olduğunu kabul. Bu işlev en az sayıda ama dosyası Yineleyicilerde aralığı hakkında konuşmak için yeterlidir [_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. Arama, ekleme ve kaldırma işlemlerinin ilişkilendirilebilir kap getirilir. Bu işlemler açıkça destekleyen üye verimli ortalama logaritması konteynerdeki öğelerin sayısını orantılı olan bir zaman bunları gerçekleştiren işlevlerdir. Öğeleri ekleme yok Yineleyicilerde geçersiz kılar ve öğelerini kaldırma sırasında kaldırılan öğeler özellikle ettiği Yineleyicilerde geçersiz kılar.

Uygulama tarafından kendi anahtarlarla değerleri ilişkilendirme koşullar olduğunda seçim ilişkilendirilebilir kapsayıcısının karşılayan multiset olmalıdır. Bir multiset öğeleri birden çok ve anahtarlarının benzersiz biçimde kendi sıralama anahtarı olarak hizmet eder. Bir bu tür bir yapı için sıralı bir listesini, söyleyin, sözcük sözcük birden çok kez oluşabilir modelidir. Sonra da bir dizi uygun kapsayıcı yapı olacaktı birden fazla sözcük kopyasını, izin değil. Daha sonra benzersiz tanımları benzersiz anahtar sözcükler listesi değerleri olarak bağlıymış harita bu verileri içerecek şekilde uygun bir yapı olacaktır. Bunun yerine tanımları benzersiz değil, sonra bir birden çok eşleme seçim kapsayıcısı olacaktır.

Multiset sırasını denetleyen işlev saklı nesne türü çağırarak siparişleri Compare. Üye işlevi çağrılarak erişilebilen bir karşılaştırma işlevi Bu saklı nesnesidir key_comp. Genel olarak, öğeleri yalnızca küçüktür bu sırayı oluşturmak için karşılaştırılabilir: her iki öğe verilen böylece, onu (içinde her ikisi de diğer azdır algılama) eşdeğer veya 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 yüklemi karşılaştırma işlevidir. İkili karşılaştırma f(x,y) iki bağımsız değişken nesne olan bir işlev nesnesidir x ve y ve dönüş değeri doğru veya yanlış. İrreflexive, antisymmetric ve karşılıklı ikili karşılaştırma ve eşdeğerlik geçişli, iki yerde nesneleri sıralamaya sıkı bir zayıf olduğu bir küme halinde uygulanan sıralama x ve y ne zaman eşdeğer olarak tanımlanan her ikisi de f(x, y) ve f(y, x) yanlış. Anahtarlar arasındaki eşitlik daha güçlü koşulu, eşdeğerlik geçiyorsa, sipariş toplam (tüm öğelerin birbirine göre sipariş algılama) olur ve eşleşen anahtarları birbirinden indiscernible.

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

multiset

Yapıları bir multiset yani boş veya başka bir deyişle kopya tüm veya belirtilen bir parçası multiset.

w5txk7zc.collapse_all(tr-tr,VS.110).gifTypeDef

allocator_type

Typedef için allocator için sınıf multiset nesnesi.

const_iterator

Typedef okuyabileceği bir çift yönlü Yineleyici için bir const öğesinin multiset.

const_pointer

Typedef bir işaretçi için bir const öğesinde bir multiset.

const_reference

Typedef başvuru için bir const öğesi depolanmış bir multiset okumak ve gerçekleştirmek için const işlemleri.

const_reverse_iterator

Typedef okuyabilen herhangi bir çift yönlü Yineleyici için const öğesinin multiset.

difference_type

İmzalı tamsayı typedef öğelerinin sayısı için bir multiset Yineleyicilerde göre sıralanmasını öğeleri arasında bir aralık.

Yineleyici

Typedef bir çift yönlü Yineleyici okumak veya herhangi bir öğeyi değiştirmek için bir multiset.

key_compare

Typedef öğeler iki göreli sırasını belirlemek için iki anahtar karşılaştıran bir işlevi nesnesi için multiset.

key_type

Typedef öğeler iki göreli sırasını belirlemek için iki sıralama anahtarları karşılaştırmak bir işlev nesnesi için multiset.

İşaretçi

Typedef işaretçisi bir öğeyi bir multiset.

başvuru

Typedef saklanan öğe başvurusu için bir multiset.

reverse_iterator

Typedef bir çift yönlü Yineleyici okumak veya bir ters bir öğeyi değiştirmek için multiset.

size_type

Öğelerin sayısını gösteren bir işaretsiz tamsayı türü bir multiset.

value_compare

Typedef iki öğe göreceli sıralamalarını belirlemek için sıralama anahtarları olarak karşılaştırma işlevi nesnesi için multiset.

value_type

Bir öğe depolanan bir nesneyi tanımlayan bir typedef bir multiset , değer olarak kapasitesi.

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

başlamak

İlk öğesine işaret eden bir yineleyici döndürür multiset.

Temizle

Tüm öğeleri siler bir multiset.

count

Öğelerin sayısını döndüren bir multiset , anahtarla eşleşen parametre tarafından belirtilen anahtar.

boş

Bağlıysa depolama alanı sınamalarını bir multiset boş.

Son

Son öğe sonra konumu gösteren bir yineleyici döndürür bir multiset.

equal_range

Yineleyicilerde çiftini döndürür. İlk öğe için çift nokta ilk Yineleyici bir multiset ile belirtilen anahtar büyük bir anahtar. İkinci Yineleyici ilk öğe için çift nokta multiset anahtar'den büyük veya eşit olan bir anahtar.

silme

Bir öğe veya öğeleri aralığı kaldırır bir multiset belirtilen konumlara veya belirtilen anahtarı aynı öğeleri kaldırır.

find

Bir öğenin ilk konumuna işaret eden bir yineleyici döndürür bir multiset , belirtilen anahtar için anahtarın vardır.

get_allocator

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

Ekle

Bir öğe veya öğeleri aralığı ekler bir multiset.

key_comp

Öğeler iki göreli sırasını belirlemek için iki sıralama anahtarları karşılaştırmak bir işlev nesne sağlar multiset.

lower_bound

İlk öğe bir yineleyici döndürür bir multiset belirtilen anahtar'den büyük veya eşit olan bir anahtar.

max_size

En fazla uzunluğunu verir multiset.

rbegin

İlk öğe bir ters işaret eden bir yineleyici döndürür multiset.

rend

Tersine çevrilmiş bir son öğe izleyen konumu işaret eden bir yineleyici döndürür multiset.

boyutu

Öğelerin sayısını döndüren bir multiset.

takas

Öğeleri iki kullanmaz multisets.

upper_bound

İlk öğe bir yineleyici döndürür bir multiset ile belirtilen anahtar büyük bir anahtar.

value_comp

Sipariş öğesi değerleri kullanılan karşılaştırma nesnenin bir kopyasını alır bir multiset.

Gereksinimler

Başlık: <set>

Namespace: std

Ayrıca bkz.

Başvuru

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

Standart Şablon Kütüphanesi

Diğer Kaynaklar

multiset üyeler

<set> Üyeler