C ++ Kitaplığı - <forward_list>
Giriş
forward_list popüler olarak kullanılan bir sıra kapsayıcıdır. Konteyner, aynı türdeki verileri tutan bir nesnedir. forward_list konteyneri, tek bağlantılı liste olarak uygulanır, dolayısıyla verilerine tek yönlü sıralı erişim sağlar.
forward_list hızlı rastgele erişim sağlamaz, yalnızca bir yönde sıralı erişimi destekler. forward_list, sabit zamanda bir dizi içinde herhangi bir yerde ekleme ve silme işlemine izin verir.
Forward_list'in öğeleri, farklı bellek parçalarına dağılabilir. Konteyner, verilerine sıralı erişime izin vermek için gerekli bilgileri depolar. forward_lists, çalışma zamanında her iki uçtan da gerektiği gibi daralabilir veya genişleyebilir. Depolama gereksinimi, dahili ayırıcı tarafından otomatik olarak yerine getirilir.
Sıfır boyutlu ileri_listeler de geçerlidir. Bu durumda forward_list.begin () ve forward_list.end () aynı konuma işaret eder. Ancak front () işlevini çağırma davranışı tanımsızdır.
Tanım
Aşağıda <forward_list> başlık dosyasından std :: forward_list tanımı bulunmaktadır.
template < class T, class Alloc = allocator<T> > class forward_list;
Parametreler
T - İçerdiği öğenin türü.
T, kullanıcı tanımlı tür dahil olmak üzere herhangi bir başka veri türü ile ikame edilebilir.
Alloc - Ayırıcı nesnenin türü.
Varsayılan olarak, en basit bellek ayırma modelini tanımlayan ve değerden bağımsız olan ayırıcı sınıfı şablonu kullanılır.
Ü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 | değer türü | T (Şablonun ilk parametresi) |
2 | allocator_type | Alloc (Şablonun ikinci parametresi) |
3 | referans | değer türü& |
4 | const_reference | const value_type & |
5 | Işaretçi | değer türü* |
6 | const_pointer | const değer_türü * |
7 | yineleyici | value_type'a rastgele erişim yineleyicisi |
8 | const_iterator | const value_type için bir rastgele erişim yineleyicisi |
9 | Beden Çeşidi | size_t |
10 | fark_türü | ptrdiff_t |
<forward_list> 'den işlevler
Aşağıda <forward_list> başlığındaki tüm yöntemlerin listesi bulunmaktadır.
İnşaatçılar
Sr.No. | Yöntem ve Açıklama |
---|---|
1 | forward_list :: forward_list varsayılan yapıcı Sıfır elemanlı boş bir forward_list oluşturur. |
2 | forward_list :: forward_list doldurma yapıcısı N elemanlı yeni bir forward_list oluşturur ve forward_list'in her bir elemanına val atar . |
3 | forward_list :: forward_list doldurma yapıcısı N elemanlı yeni bir forward_list oluşturur ve forward_list'in her bir elemanına sıfır değeri atar. |
4 | forward_list :: forward_list aralık yapıcısı Aralığında gibi birçok elemanlar olarak bir forward_list oluşturur ilk için son . |
5 | forward_list :: forward_list kopyalama yapıcısı Mevcut listede bulunan her bir öğenin kopyasıyla bir forward_list oluşturur. |
6 | forward_list :: forward_list taşıma yapıcısı İçeriğiyle bir forward_list oluşturur diğer kullanarak hareket semantik. |
7 | forward_list :: forward_list başlatıcı liste yapıcısı Başlatma listesinden bir forward_list oluşturur. |
Yıkıcı
Sr.No. | Yöntem ve Açıklama |
---|---|
1 | forward_list :: ~ forward_list Forward_list nesnesini hafızasını serbest bırakarak yok eder. |
Üye fonksiyonları
Sr.No. | Yöntem ve Açıklama |
---|---|
1 | forward_list :: aralık sürümünü ata Eskileri değiştirerek forward_list'e yeni değer atar. |
2 | forward_list :: dolgu sürümünü ata Eskileri değiştirerek forward_list'e yeni değerler atar. |
3 | forward_list :: başlatıcı listesi sürümünü ata Eskileri değiştirerek forward_list'e yeni değerler atar. |
4 | forward_list :: before_begin Forward_list'in ilk öğesinden önceki konuma işaret eden bir rastgele erişim yineleyicisi döndürür. |
5 | forward_list :: begin Forward_list'in ilk öğesine işaret eden rastgele bir erişim yineleyicisi döndürür. |
6 | forward_list :: cbefore_begin Forward_list'in ilk öğesinden önceki konuma işaret eden sabit bir rastgele erişim yineleyicisi döndürür. |
7 | forward_list :: cbegin Forward_list'in başlangıcına işaret eden sabit bir rastgele erişim yineleyicisi döndürür. |
8 | forward_list :: cend Forward_list'in sonuna işaret eden sabit bir rasgele erişim yineleyicisi döndürür. |
9 | forward_list :: clear Forward_list'in tüm elemanlarını kaldırarak forward_list'i yok eder ve forward_list'in boyutunu sıfır olarak ayarlar. |
10 | forward_list :: emplace_after Forward_list içindeki pozisyondan sonra yeni eleman oluşturur ve ekler ve forward_list'in boyutunu bir artırır. |
11 | forward_list :: emplace_front Forward_list'in başına yeni eleman ekler ve forward_list'in boyutunu birer birer artırır. |
12 | forward_list :: empty Forward_list'in boş olup olmadığını test eder. |
13 | forward_list :: end Forward_list'in son öğesine işaret eden rastgele bir erişim yineleyicisi döndürür. |
14 | forward_list :: erase_after pozisyon versiyonu Forward_list'ten konumdan sonra tek öğeyi kaldırır . |
15 | forward_list :: aralık sürümünü sil Forward_list öğesinin aralığını kaldırır. |
16 | forward_list :: front Forward_list'in ilk öğesine bir başvuru döndürür. |
17 | forward_list :: get_allocator Forward_list ile ilişkili bir ayırıcı döndürür |
18 | forward_list :: insert_after tek elemanlı versiyon Forward_list içindeki konumdan sonra yeni eleman ekleyerek yineleyiciyi genişletir |
19 | forward_list :: insert_after sürümü taşı Forward_list içindeki konumdan sonra yeni eleman ekleyerek yineleyiciyi genişletir |
20 | forward_list :: insert_after doldurma sürümü Forward_list içindeki konumdan sonra yeni eleman ekleyerek yineleyiciyi genişletir |
21 | forward_list :: insert_after aralık versiyonu Forward_list içindeki konumdan sonra yeni eleman ekleyerek yineleyiciyi genişletir |
22 | forward_list :: insert_after başlatıcı liste sürümü Forward_list içindeki konumdan sonra yeni eleman ekleyerek yineleyiciyi genişletir |
23 | forward_list :: max_size Forward_list tarafından tutulabilecek maksimum eleman sayısını döndürür. |
24 | forward_list :: birleştirme Sıralanmış iki ileri_listeyi tek bir listede birleştirir. |
25 | forward_list :: birleştirme taşıma sürümü Sıralanmış iki ileri_listeyi tek bir listede birleştirir. |
26 | forward_list :: birleştirme karşılaştırma işlevi Sıralanmış iki ileri_listeyi tek bir listede birleştirir. |
27 | forward_list :: birleştirme karşılaştırma işlevi sürümü taşı Taşıma semantiğini kullanarak iki sıralı ileri_listeyi tek bir listede birleştirir. |
28 | forward_list :: operator = sürümü kopyala Eskileri değiştirerek yeni içerikleri forward_list'e atar. |
29 | forward_list :: operator = sürümü taşı Eskileri değiştirerek yeni içerikleri forward_list'e atayın. |
30 | forward_list :: operator = başlatıcı listesi sürümü Eskileri değiştirerek yeni içerikleri forward_list'e atayın. |
31 | forward_list :: pop_front İlk öğeyi forward_list'ten kaldırır. |
32 | forward_list :: push_front kopya sürümü Forward_list'in başına yeni eleman ekler. |
33 | forward_list :: push_front taşıma sürümü Forward_list'in başına yeni eleman ekler. |
34 | forward_list :: remove , değerle eşleşen forward_list'ten öğe (ler) i kaldırır. |
35 | forward_list :: remove_if , koşulu karşılayan forward_list öğesinden öğeleri kaldırır. |
36 | forward_list :: resize Forward_list'in boyutunu değiştirir. |
37 | forward_list :: değer sürümünü yeniden boyutlandır Forward_list'in boyutunu değiştirir. |
38 | forward_list :: ters Forward_list'te bulunan öğelerin sırasını tersine çevirir. |
39 | forward_list :: sort Forward_list'in öğelerini sıralar. |
40 | forward_list :: sort karşılaştırma işlevi Forward_list'in öğelerini sıralar. |
41 | forward_list :: splice_after Forward_list'ten * this'e tüm öğeleri aktarır. |
42 | forward_list :: splice_after sürümü taşı Transferler forward_list gelen tüm unsurları x için bu * hamle semantiğini kullanarak. |
43 | forward_list :: splice_after tek eleman Transferler bir unsur Yineleyici tarafından işaret i forward_list gelen x içine * Bu . |
44 | forward_list :: splice_after tek elemanlı taşıma versiyonu Transferler eleman Yineleyici tarafından işaret i forward_list gelen x içine bu * hareket semantiğini kullanarak. |
45 | forward_list :: splice_after aralık versiyonu Aralığındaki Transferler unsurları birinci üzere son gelen x için * Bu . |
46 | forward_list :: splice aralığı ve versiyonu taşı Aralığındaki Transferler unsurları birinci üzere son gelen x için bu * hamle semantiğini kullanarak. |
47 | forward_list :: takas Bir forward_list'in içeriğini başka bir forward_list x'in içeriğiyle değiştirir . |
48 | forward_list :: unique Ardışık tüm yinelenen öğeleri forward_list'ten kaldırır. |
49 | forward_list :: unique Ardışık tüm yinelenen öğeleri forward_list'ten kaldırır. |
Üye olmayan aşırı yüklenmiş işlevler
Sr.No. | Yöntem ve Açıklama |
---|---|
1 | operatör == İki forward_list'in eşit olup olmadığını test eder. |
2 | operatör! = İki forward_list'in eşit olup olmadığını test eder. |
3 | operatör < İlk forward_list'in diğerinden daha küçük olup olmadığını test eder. |
4 | operatör <= İlk forward_list'in diğerinden küçük veya diğerine eşit olup olmadığını test eder. |
5 | operatör> First forward_list'in diğerinden büyük olup olmadığını test eder. |
6 | operatör> = İlk forward_list'in diğerinden büyük veya diğerine eşit olup olmadığını test eder. |
7 | takas İki forward_list'in içeriğini değiştirir. |