Perpustakaan C ++ - <forward_list>

pengantar

forward_list adalah kontainer urutan yang populer digunakan. Container adalah sebuah objek yang menyimpan data dengan tipe yang sama. wadah forward_list diimplementasikan sebagai daftar tertaut tunggal, oleh karena itu ia menyediakan akses sekuensial searah ke datanya.

forward_list tidak menyediakan akses acak cepat, ini hanya mendukung akses sekuensial hanya dalam satu arah. forward_list memungkinkan operasi penyisipan dan penghapusan di mana saja dalam suatu urutan dalam waktu yang konstan.

Elemen forward_list dapat tersebar di berbagai bagian memori. Penampung menyimpan informasi yang diperlukan untuk memungkinkan akses berurutan ke datanya. forward_lists dapat menyusut atau meluas sesuai kebutuhan dari kedua ujungnya pada waktu proses. Persyaratan penyimpanan dipenuhi secara otomatis oleh pengalokasi internal.

Forward_lists berukuran nol juga valid. Dalam hal ini forward_list.begin () dan forward_list.end () menunjuk ke lokasi yang sama. Tetapi perilaku memanggil front () tidak ditentukan.

Definisi

Di bawah ini adalah definisi std :: forward_list dari file header <forward_list>

template < class T, class Alloc = allocator<T> > class forward_list;

Parameter

  • T - Jenis elemen yang dikandung.

    T dapat diganti dengan tipe data lain termasuk tipe yang ditentukan pengguna.

  • Alloc - Jenis objek pengalokasi.

    Secara default, template kelas pengalokasi digunakan, yang mendefinisikan model alokasi memori paling sederhana dan tidak bergantung pada nilai.

Jenis anggota

Jenis anggota berikut dapat digunakan sebagai parameter atau jenis pengembalian berdasarkan fungsi anggota.

Sr.No. Jenis anggota Definisi
1 value_type T (Parameter pertama dari template)
2 jenis_alokasi Alloc (Parameter kedua dari template)
3 referensi value_type &
4 const_reference const value_type &
5 penunjuk value_type *
6 const_pointer const value_type *
7 iterator iterator akses acak ke value_type
8 const_iterator iterator akses acak ke const value_type
9 tipe ukuran size_t
10 perbedaan_tipe ptrdiff_t

Fungsi dari <forward_list>

Di bawah ini adalah daftar semua metode dari header <forward_list>.

Konstruktor

Sr.No. Metode & Deskripsi
1 forward_list :: forward_list konstruktor default

Membangun forward_list kosong dengan elemen nol.

2 forward_list :: forward_list mengisi konstruktor

Membuat forward_list baru dengan n elemen dan menetapkan val ke setiap elemen forward_list.

3 forward_list :: forward_list mengisi konstruktor

Membuat forward_list baru dengan n elemen dan menetapkan nilai nol ke setiap elemen forward_list.

4 forward_list :: konstruktor rentang forward_list

Membangun forward_list dengan sebanyak mungkin elemen dalam rentang pertama hingga terakhir .

5 forward_list :: forward_list menyalin konstruktor

Membangun forward_list dengan salinan setiap elemen yang ada dalam daftar yang ada.

6 forward_list :: forward_list pindah konstruktor

Membuat forward_list dengan konten lainnya menggunakan semantik bergerak.

7 forward_list :: forward_list penginisialisasi daftar konstruktor

Membuat forward_list dari daftar inisialisasi.

Penghancur

Sr.No. Metode & Deskripsi
1 forward_list :: ~ forward_list

Menghancurkan objek forward_list dengan membatalkan alokasinya.

Fungsi anggota

Sr.No. Metode & Deskripsi
1 forward_list :: menetapkan versi rentang

Menetapkan nilai baru ke forward_list dengan mengganti yang lama.

2 forward_list :: assign versi isi

Menetapkan nilai baru ke forward_list dengan mengganti yang lama.

3 forward_list :: assign versi daftar penginisialisasi

Menetapkan nilai baru ke forward_list dengan mengganti yang lama.

4 forward_list :: before_begin

Mengembalikan iterator akses acak yang menunjuk ke posisi sebelum elemen pertama forward_list.

5 forward_list :: mulai

Mengembalikan iterator akses acak yang menunjuk ke elemen pertama forward_list.

6 forward_list :: cbefore_begin

Mengembalikan iterator akses acak konstan yang menunjuk ke posisi sebelum elemen pertama forward_list.

7 forward_list :: cbegin

Mengembalikan iterator akses acak konstan yang menunjuk ke awal forward_list.

8 forward_list :: cend

Mengembalikan iterator akses acak konstan yang mengarah ke akhir forward_list.

9 forward_list :: jelas

Hancurkan forward_list dengan menghapus semua elemen dari forward_list dan setel ukuran forward_list ke nol.

10 forward_list :: emplace_after

Membangun dan menyisipkan elemen baru setelah posisi di forward_list dan meningkatkan ukuran forward_list satu.

11 forward_list :: emplace_front

Menyisipkan elemen baru di awal forward_list dan meningkatkan ukuran forward_list satu kali.

12 forward_list :: kosong

Menguji apakah forward_list kosong atau tidak.

13 forward_list :: end

Mengembalikan iterator akses acak yang menunjuk ke elemen terakhir dari forward_list.

14 forward_list :: erase_after versi posisi

Menghapus satu elemen setelah posisi dari forward_list.

15 forward_list :: erase range version

Menghapus berbagai elemen dari forward_list tersebut.

16 forward_list :: depan

Mengembalikan referensi ke elemen pertama forward_list.

17 forward_list :: get_allocator

Mengembalikan pengalokasi yang terkait dengan forward_list

18 forward_list :: insert_after versi elemen tunggal

Perluas iterator dengan memasukkan elemen baru setelah posisi di forward_list

19 forward_list :: insert_after pindah versi

Perluas iterator dengan memasukkan elemen baru setelah posisi di forward_list

20 forward_list :: insert_after isi versi

Perluas iterator dengan memasukkan elemen baru setelah posisi di forward_list

21 forward_list :: insert_after versi range

Perluas iterator dengan memasukkan elemen baru setelah posisi di forward_list

22 forward_list :: insert_after versi daftar penginisialisasi

Perluas iterator dengan memasukkan elemen baru setelah posisi di forward_list

23 forward_list :: max_size

Mengembalikan jumlah maksimum elemen yang dapat dipegang oleh forward_list.

24 forward_list :: merge

Menggabungkan dua daftar_forward yang diurutkan menjadi satu.

25 forward_list :: merge move version

Menggabungkan dua daftar_forward yang diurutkan menjadi satu.

26 forward_list :: menggabungkan fungsi perbandingan

Menggabungkan dua daftar_forward yang diurutkan menjadi satu.

27 forward_list :: merge bandingkan versi pemindahan fungsi

Gabungkan dua daftar_forward yang diurutkan menjadi satu dengan menggunakan semantik bergerak.

28 forward_list :: operator = salin versi

Menetapkan konten baru ke forward_list dengan mengganti yang lama.

29 forward_list :: operator = memindahkan versi

Tetapkan konten baru ke forward_list dengan mengganti yang lama.

30 forward_list :: operator = versi daftar penginisialisasi

Tetapkan konten baru ke forward_list dengan mengganti yang lama.

31 forward_list :: pop_front

Menghapus elemen pertama dari forward_list.

32 forward_list :: versi salin push_front

Menyisipkan elemen baru di awal forward_list.

33 forward_list :: push_front pindah versi

Menyisipkan elemen baru di awal forward_list.

34 forward_list :: hapus

menghapus elemen dari forward_list yang cocok dengan nilainya.

35 forward_list :: remove_if

menghapus elemen dari forward_list yang memenuhi ketentuan.

36 forward_list :: resize

Mengubah ukuran forward_list.

37 forward_list :: mengubah ukuran nilai versi

Mengubah ukuran forward_list.

38 forward_list :: mundur

Membalik urutan elemen yang ada di forward_list.

39 forward_list :: sort

Mengurutkan elemen dari forward_list.

40 forward_list :: fungsi perbandingan sortir

Mengurutkan elemen dari forward_list.

41 forward_list :: splice_after

Mentransfer semua elemen dari forward_list ke * this.

42 forward_list :: splice_after pindah versi

Mentransfer semua elemen dari forward_list x ke * ini dengan menggunakan semantik pindah.

43 forward_list :: splice_after elemen tunggal

Mentransfer elemen yang ditunjukkan oleh iterator i dari forward_list x ke * this .

44 forward_list :: splice_after versi pemindahan elemen tunggal

Mentransfer elemen yang ditunjukkan oleh iterator i dari forward_list x ke * ini dengan menggunakan semantik pindah.

45 forward_list :: splice_after versi range

Mentransfer elemen dalam rentang pertama hingga terakhir dari x ke * ini .

46 forward_list :: splice range dan versi pindah

Mentransfer elemen dalam rentang pertama hingga terakhir dari x ke * ini dengan menggunakan semantik pindah.

47 forward_list :: swap

Menukar konten forward_list dengan konten forward_list x lainnya .

48 forward_list :: unik

Menghapus semua elemen duplikat yang berurutan dari forward_list.

49 forward_list :: unik

Menghapus semua elemen duplikat yang berurutan dari forward_list.

Fungsi non-anggota kelebihan beban

Sr.No. Metode & Deskripsi
1 operator ==

Menguji apakah dua forward_lists sama atau tidak.

2 operator! =

Menguji apakah dua forward_lists sama atau tidak.

3 operator <

Menguji apakah forward_list pertama kurang dari yang lain atau tidak.

4 operator <=

Menguji apakah forward_list pertama kurang dari atau sama dengan lainnya atau tidak.

5 operator>

Menguji apakah forward_list pertama lebih besar dari yang lain atau tidak.

6 operator> =

Menguji apakah forward_list pertama lebih besar dari atau sama dengan yang lain atau tidak.

7 menukar

Menukar konten dari dua forward_list.