C ++ Kitaplığı - <set>

Giriş

Bir setAnahtar türünde sıralı benzersiz nesneler kümesini içeren bir İlişkilendirilebilir kapsayıcıdır. Her öğe yalnızca bir kez oluşabilir, bu nedenle kopyalara izin verilmez.

Dört tür İlişkilendirilebilir kapsayıcı vardır: set, multiset, map ve multimap.

Bir kümedeki öğelerin değeri kapta bir kez değiştirilemez, yani öğeler her zaman sabittir. Ancak konteynere takılabilir veya çıkarılabilirler.

set kapsayıcıları genellikle tek tek öğelere anahtarlarıyla erişmede sırasız_set kaplarından daha yavaştır, ancak sıralarına göre alt kümeler üzerinde doğrudan yinelemeye izin verirler.

Tanım

Aşağıda <set> başlık dosyasından std :: set tanımı bulunmaktadır.

template < 
    class Key,
    class Compare = std::less<Key>,
    class Allocator = std::allocator<Key>
> class set;

Parametreler

  • Key - İçerdiği öğenin türü.

    Anahtar, kullanıcı tanımlı tür dahil olmak üzere başka herhangi bir veri türü ile değiştirilebilir.

Üye türleri

Aşağıdaki üye türleri, üye işlevlere göre parametre veya dönüş türü olarak kullanılabilir.

Sr.No. Üye türleri Tanım
1 anahtar türü Anahtar
2 değer türü Anahtar
3 referans Ayırıcı :: başvuru

değer türü&

4 const_reference Ayırıcı :: const_reference

const value_type &

5 Işaretçi Ayırıcı :: işaretçi

std :: allocator_traits <Allocator> :: pointer

6 const_pointer Ayırıcı :: const_pointer

std :: allocator_traits <Allocator> :: const_pointer

7 yineleyici Çift Yönlü Yineleyici
8 const_iterator sabit Çift Yönlü Yineleyici
9 reverse_iterator std :: ters_iterator <iterator>
10 const_reverse_iterator std :: ters_iterator <const_iterator>
11 Beden Çeşidi İşaretsiz Tamsayı Türü (std :: size_t)
12 fark_türü İmzalı Tamsayı Türü (std :: ptrdiff_t)
13 key_compare Karşılaştırmak
14 değer_karşılaştırma Karşılaştırmak
15 allocator_type Ayırıcı

<set> kaynaklı işlevler

Aşağıda <set> başlığındaki tüm yöntemlerin listesi bulunmaktadır.

ÜYE FONKSİYONLARI

DEFAULT MEMBER FUNCTIONS

Sr.No. Yöntem ve Açıklama
1 Varsayılan kurucu

Set kabını oluşturur.

2 Aralık oluşturucu

Aralığın içeriğiyle ayarlanan kabı oluşturur.

3 Yapıcıyı kopyala

Set kabını diğer setin kopyasıyla oluşturur.

4 Yapıcıyı taşı

Set kabını diğer kümenin içeriğiyle taşıma semantiğini kullanarak oluşturur.

5 Başlatıcı-liste yapıcısı

Başlatıcı listesinin içeriğiyle set kabını oluşturur.

6 (yıkıcı)

Ayarlanan kabı yok eder.

7 operatör =

Değerleri ayarlı kaba atar.

İTERATÖRLER

Sr.No. Yöntem ve Açıklama
1 set :: begin

Yineleyiciyi başa döndürür.

2 set :: cbegin

Sabit yineleyiciyi başa döndürür.

3 set :: end

Yineleyiciyi sona döndürür.

4 set :: cend

Sabit yineleyiciyi sona döndürür.

5 set :: rbegin

Ters yineleyiciyi ters başlangıca döndürür.

6 set :: crbegin

Const ters yineleyiciyi ters başlangıca döndür.

7 set :: rendelemek

Ters yineleyiciyi ters uca döndürür.

8 set :: crend

Sabit ters yineleyiciyi ters uca döndürür.

KAPASİTE

Sr.No. Yöntem ve Açıklama
1 set :: boş

Ayarlanan konteyner boş olduğunda döner.

2 set :: boyut

Ayarlanan kapsayıcıdaki öğelerin sayısını döndürür.

3 set :: max_size

Ayarlanan kabın tutabileceği maksimum öğe sayısını döndürür.

DEĞİŞTİRİCİLER

Sr.No. Yöntem ve Açıklama
1 temizlemek

Set kapsayıcısından tüm öğeleri kaldırır.

2 set :: ekle

Set kabına yeni eleman ekler.

3 set :: yerleştirmek

Benzersizse, kümeye yeni öğe ekler.

4 set :: emplace_hint

Benzersizse, ekleme konumuna ilişkin bir ipucu ile kümeye yeni öğe ekler.

5 set :: sil

Ayarlanmış kapsayıcıdan tek bir öğeyi veya bir dizi öğeyi kaldırır.

6 set :: takas

Kabın içeriğini, aynı türden başka bir küme kapsayıcının içeriğiyle değiştirir.

YUKARI BAK

Sr.No. Yöntem ve Açıklama
1 set :: count

Ayarlanan kapsayıcıda eşleşen değere sahip öğelerin sayısını döndürür.

2 set :: bul

Değer için kümeyi arar ve bulunursa ona bir yineleyici döndürür, yoksa set :: end için bir yineleyici döndürür.

3 set :: lower_bound

Değerden önce gittiği düşünülmeyen, ayarlanan kapsayıcıdaki ilk öğeyi gösteren bir yineleyici döndürür.

4 set :: üst_bound

Değerden sonra gittiği düşünülen, ayarlanan kapsayıcıdaki ilk öğeyi gösteren bir yineleyici döndürür.

5 set :: eşit_aralık

Ayarlanan kapsayıcıdaki değer ile eşdeğer olan tüm öğeleri içeren bir aralığın sınırlarını döndürür.

GÖZLEMCİLER

Sr.No. Yöntem ve Açıklama
1 set :: key_comp

Ayarlanan kapsayıcı tarafından kullanılan karşılaştırma nesnesinin bir kopyasını döndürür.

2 set :: value_comp

Ayarlanan kapsayıcı tarafından kullanılan karşılaştırma nesnesinin bir kopyasını döndürür.

TAHSİS MAKİNESİ

Sr.No. Yöntem ve Açıklama
1 set :: get_allocator

Ayırıcı nesnenin ayarlı kapsayıcıyla ilişkili bir kopyasını döndürür.