Perpustakaan C ++ - <map>
Pengantar peta
Peta adalah kamus seperti struktur data. Ini adalah urutan pasangan (kunci, nilai), di mana hanya satu nilai yang dikaitkan dengan setiap kunci unik. Ini sering disebut sebagai array asosiatif .
Dalam peta nilai kunci umumnya digunakan untuk mengurutkan elemen. Untuk tipe data peta kunci dan nilai dapat berbeda dan direpresentasikan sebagai
typedef pair<const Key, T> value_type;
Peta biasanya diimplementasikan sebagai Binary Search Tree.
Peta berukuran nol juga valid. Dalam hal ini map.begin () dan map.end () menunjuk ke lokasi yang sama.
Definisi
Di bawah ini adalah definisi std :: map dari file header <map>
template < class Key,
class T,
class Compare = less<Key>,
class Alloc = allocator<pair<const Key,T> >
> class map;
Parameter
Key - Jenis kuncinya.
T - Jenis nilai yang dipetakan.
Compare - Predikat biner yang menggunakan dua kunci elemen sebagai argumen dan mengembalikan bool.
Alloc - Jenis objek pengalokasi.
T dapat diganti dengan tipe data lain termasuk tipe yang ditentukan pengguna.
Jenis anggota
Jenis anggota berikut dapat digunakan sebagai parameter atau jenis pengembalian berdasarkan fungsi anggota.
Sr.No. | Jenis anggota | Definisi |
---|---|---|
1 | key_type | Key (Parameter pertama dari template) |
2 | mapped_type | T (Parameter kedua dari template) |
3 | key_compare | Bandingkan (Parameter ketiga dari template) |
4 | jenis_alokasi | Alloc (Parameter keempat dari template) |
5 | value_type | pasangkan <const key_type, mapped_type> |
6 | value_compare | Kelas fungsi bersarang untuk membandingkan elemen |
7 | referensi | alokasi_type :: referensi |
8 | const_reference | alokasiator_type :: const_reference |
9 | penunjuk | alokasiator_type :: pointer |
10 | const_pointer | alokasiator_type :: const_pointer |
11 | iterator | iterator dua arah ke value_type |
12 | const_iterator | iterator dua arah ke const value_type |
13 | reverse_iterator | membalikkan iterator |
14 | const_reverse_iterator | iterator terbalik konstan |
15 | perbedaan_tipe | ptrdiff_t |
16 | tipe ukuran | size_t |
Fungsi dari <map>
Di bawah ini adalah daftar semua metode dari <map> header.
Konstruktor
Sr.No. | Metode & Deskripsi |
---|---|
1 | peta :: konstruktor default peta Membangun peta kosong dengan elemen nol. |
2 | peta :: konstruktor jangkauan peta Membuat peta dengan elemen sebanyak dalam rentang pertama hingga terakhir . |
3 | peta :: konstruktor salinan peta Membuat peta dengan salinan setiap elemen yang ada di peta yang ada. |
4 | peta :: konstruktor bergerak peta Membuat peta dengan konten lain menggunakan semantik bergerak. |
5 | peta :: konstruktor daftar penginisialisasi peta Membuat peta dari daftar inisialisasi. |
Penghancur
Sr.No. | Metode & Deskripsi |
---|---|
1 | peta :: ~ peta Menghancurkan objek peta dengan membatalkan alokasi memorinya. |
Fungsi anggota
Sr.No. | Metode & Deskripsi |
---|---|
1 | peta :: di Mengembalikan referensi ke nilai yang dipetakan yang terkait dengan kunci k . |
2 | peta :: mulai Mengembalikan iterator yang merujuk ke elemen pertama peta. |
3 | peta :: cbegin Mengembalikan iterator konstan yang merujuk ke elemen pertama peta. |
4 | peta :: cend Pengembalian konstan iterator yang menunjuk ke masa lalu-the-end unsur peta. |
5 | peta :: jelas Hancurkan peta dengan menghapus semua elemen dan menyetel ukuran peta menjadi nol. |
6 | peta :: hitungan Mengembalikan jumlah nilai yang dipetakan yang terkait dengan kunci k . |
7 | peta :: crbegin Mengembalikan iterator terbalik konstan yang menunjuk ke elemen terakhir wadah i. |
8 | peta :: crend Mengembalikan iterator terbalik konstan yang menunjuk ke elemen teoritis sebelum elemen pertama dalam wadah i. |
9 | peta :: emplace Memperluas penampung dengan memasukkan elemen baru. |
10 | peta :: versi petunjuk emplace_hint Menyisipkan elemen baru di peta menggunakan petunjuk sebagai posisi untuk elemen. |
11 | peta :: kosong Menguji apakah peta kosong atau tidak. |
12 | peta :: akhir Mengembalikan sebuah iterator yang menunjuk ke masa lalu-the-end elemen dalam peta. |
13 | peta :: rentang_sama Mengembalikan berbagai elemen yang cocok dengan kunci tertentu. |
14 | map :: hapus versi posisi Menghapus satu elemen peta dari posisinya . |
15 | map :: hapus versi posisi Menghapus satu elemen peta dari posisinya . |
16 | map :: hapus kunci Menghapus nilai yang dipetakan yang terkait dengan kunci k . |
17 | map :: hapus versi rentang Menghapus berbagai elemen dari peta. |
18 | map :: hapus versi rentang Menghapus berbagai elemen dari peta. |
19 | peta :: temukan Menemukan elemen yang terkait dengan kunci k . |
20 | peta :: get_allocator Mengembalikan pengalokasi yang terkait dengan peta. |
21 | map :: masukkan elemen tunggal Memperluas wadah dengan memasukkan elemen baru di peta. |
22 | map :: masukkan versi petunjuk Memperluas wadah dengan memasukkan elemen baru di peta. |
23 | peta :: masukkan versi jangkauan Memperluas wadah dengan memasukkan elemen baru di peta. |
24 | map :: masukkan ayat petunjuk bergerak Memperluas peta dengan memasukkan elemen baru. |
25 | map :: masukkan versi daftar penginisialisasi Memperluas peta dengan memasukkan elemen baru dari daftar penginisialisasi. |
26 | map :: key_comp Mengembalikan objek fungsi yang membandingkan kunci, yang merupakan salinan dari comp argumen konstruktor penampung ini . |
27 | peta :: batas_bawah Mengembalikan iterator yang menunjuk ke elemen pertama yang tidak kurang dari kunci k . |
28 | peta :: ukuran_maks Mengembalikan jumlah maksimum elemen yang bisa dipegang oleh peta. |
29 | map :: operator = salin versi Tetapkan konten baru ke peta dengan mengganti yang lama dan ubah ukuran jika perlu. |
30 | map :: operator = memindahkan versi Pindahkan konten dari satu peta ke peta lainnya dan ubah ukuran jika perlu. |
31 | map :: operator = versi daftar penginisialisasi Salin elemen dari daftar penginisialisasi ke peta. |
32 | map :: operator [] salin versi Jika kunci k cocok dengan elemen dalam penampung, maka metode mengembalikan referensi ke elemen tersebut. |
33 | map :: operator [] memindahkan versi Jika kunci k cocok dengan elemen dalam penampung, maka metode mengembalikan referensi ke elemen tersebut. |
34 | peta :: rbegin Mengembalikan iterator terbalik yang menunjuk ke elemen terakhir peta. |
35 | peta :: rend Mengembalikan iterator terbalik yang menunjuk ke ujung belakang peta i. |
36 | ukuran peta Mengembalikan jumlah elemen yang ada di peta. |
37 | peta :: swap Bertukar isi peta dengan isi peta x. |
38 | peta :: batas_atas Mengembalikan iterator yang menunjuk ke elemen pertama yang lebih besar dari kunci k . |
39 | map :: value_comp Mengembalikan objek fungsi yang membandingkan objek berjenis std :: map :: value_type . |
Fungsi non-anggota kelebihan beban
Sr.No. | Metode & Deskripsi |
---|---|
1 | operator == Menguji apakah dua peta sama atau tidak. |
2 | operator! = Menguji apakah dua peta sama atau tidak. |
3 | operator < Menguji apakah peta pertama kurang dari yang lain atau tidak. |
4 | peta :: operator <= Menguji apakah peta pertama kurang dari atau sama dengan yang lain atau tidak. |
5 | operator> Menguji apakah peta pertama lebih besar dari yang lain atau tidak. |
6 | operator> = Menguji apakah peta pertama lebih besar dari atau sama dengan yang lain atau tidak. |
7 | menukar() Bertukar isi peta dengan isi peta x. |
Pengantar multimap
Multimap adalah kamus seperti struktur data. Ini adalah urutan pasangan (kunci, nilai) , di mana beberapa nilai dapat dikaitkan dengan kunci yang setara. Ini sering disebut sebagai array asosiatif .
Dalam multimap nilai kunci umumnya digunakan untuk mengurutkan elemen. Untuk tipe data multimap, kunci dan nilai dapat berbeda dan direpresentasikan sebagai
typedef pair<const Key, T> value_type;
Multimaps biasanya diimplementasikan sebagai Binary Search Tree.
Multimaps berukuran nol juga valid. Dalam hal ini multimap.begin () dan multimap.end () menunjuk ke lokasi yang sama.
Definisi
Di bawah ini adalah definisi std :: multimap dari file header <multimap>
template < class Key,
class T,
class Compare = less<Key>,
class Alloc = allocator<pair<const Key,T> >
> class multimap;
Parameter
Key - Jenis kuncinya.
T - Jenis nilai yang dipetakan.
Compare - Predikat biner yang menggunakan dua kunci elemen sebagai argumen dan mengembalikan bool.
Alloc - Jenis objek pengalokasi.
T dapat diganti dengan tipe data lain termasuk tipe yang ditentukan pengguna.
Jenis anggota
Jenis anggota berikut dapat digunakan sebagai parameter atau jenis pengembalian berdasarkan fungsi anggota.
Sr.No. | Jenis anggota | Definisi |
---|---|---|
1 | key_type | Key (Parameter pertama dari template) |
2 | mapped_type | T (Parameter kedua dari template) |
3 | key_compare | Bandingkan (Parameter ketiga dari template) |
4 | jenis_alokasi | Alloc (Parameter keempat dari template) |
5 | value_type | pasangkan <const key_type, mapped_type> |
6 | value_compare | Kelas fungsi bersarang untuk membandingkan elemen |
7 | referensi | alokasi_type :: referensi |
8 | const_reference | alokasiator_type :: const_reference |
9 | penunjuk | alokasiator_type :: pointer |
10 | const_pointer | alokasiator_type :: const_pointer |
11 | iterator | iterator dua arah ke value_type |
12 | const_iterator | iterator dua arah ke const value_type |
13 | reverse_iterator | membalikkan iterator |
14 | const_reverse_iterator | iterator terbalik konstan |
15 | perbedaan_tipe | ptrdiff_t |
16 | tipe ukuran | size_t |
Fungsi dari <multimap>
Di bawah ini adalah daftar semua metode dari <multimap> header.
Konstruktor
Sr.No. | Metode & Deskripsi |
---|---|
1 | multimap :: konstruktor default multimap Membuat multimap kosong dengan elemen nol. |
2 | multimap :: konstruktor jangkauan multimap Membuat multimap dengan elemen sebanyak dalam rentang pertama hingga terakhir . |
3 | multimap :: konstruktor salinan multimap Membuat multimap dengan salinan setiap elemen yang ada di multimap yang ada. |
4 | multimap :: multimap pindah konstruktor Membuat multimap dengan konten lainnya menggunakan semantik bergerak. |
5 | multimap :: multimap penginisialisasi daftar konstruktor Membuat multimap dari daftar inisialisasi. |
Penghancur
Sr.No. | Metode & Deskripsi |
---|---|
1 | multimap :: ~ multimap Menghancurkan objek multimap dengan membatalkan alokasi memorinya. |
Fungsi anggota
Sr.No. | Metode & Deskripsi |
---|---|
1 | multimap :: mulai Mengembalikan iterator yang merujuk ke elemen pertama multimap. |
2 | multimap :: cbegin Mengembalikan iterator konstan yang merujuk ke elemen pertama multimap. |
3 | multimap :: cend Pengembalian konstan iterator yang menunjuk ke masa lalu-the-end unsur multimap tersebut. |
4 | multimap :: jelas Hancurkan multimap dengan menghapus semua elemen dan setel ukuran multimap ke nol. |
5 | multimap :: count Mengembalikan jumlah nilai multimapped yang terkait dengan kunci k . |
6 | multimap :: crbegin Mengembalikan iterator terbalik konstan yang menunjuk ke elemen terakhir penampung. |
7 | multimap :: crend Mengembalikan iterator terbalik konstan yang menunjuk ke elemen teoritis sebelum elemen pertama dalam penampung. |
8 | multimap :: emplace Memperluas penampung dengan memasukkan elemen baru. |
9 | multimap :: versi petunjuk emplace_hint Menyisipkan elemen baru dalam multimap menggunakan petunjuk sebagai posisi elemen. |
10 | multimap :: kosong Menguji apakah multimap kosong atau tidak. |
11 | multimap :: end Mengembalikan sebuah iterator yang menunjuk ke masa lalu-the-end elemen dalam multimap tersebut. |
12 | multimap :: equal_range Mengembalikan berbagai elemen yang cocok dengan kunci tertentu. |
13 | multimap :: menghapus versi posisi Menghapus satu elemen multimap dari posisinya . |
14 | multimap :: menghapus versi posisi Menghapus satu elemen multimap dari posisinya . |
15 | multimap :: tombol hapus Menghapus nilai yang dipetakan yang terkait dengan kunci k . |
16 | multimap :: erase range version Menghapus berbagai elemen dari multimap. |
17 | multimap :: erase range version Menghapus berbagai elemen dari multimap. |
18 | multimap :: temukan Menemukan elemen yang terkait dengan kunci k . |
19 | multimap :: get_allocator Mengembalikan pengalokasi yang terkait dengan multimap. |
20 | multimap :: menyisipkan elemen tunggal Memperluas penampung dengan memasukkan elemen baru dalam multimap. |
21 | multimap :: masukkan versi petunjuk Memperluas penampung dengan memasukkan elemen baru dalam multimap. |
22 | multimap :: masukkan versi rentang Memperluas penampung dengan memasukkan elemen baru di multimap. |
23 | multimap :: masukkan ayat petunjuk bergerak Memperluas multimap dengan memasukkan elemen baru. |
24 | multimap :: masukkan versi daftar penginisialisasi Memperluas multimap dengan memasukkan elemen baru dari daftar penginisialisasi. |
25 | multimap :: key_comp Mengembalikan objek fungsi yang membandingkan kunci, yang merupakan salinan dari comp argumen konstruktor penampung ini . |
26 | multimap :: lower_bound Mengembalikan iterator yang menunjuk ke elemen pertama yang tidak kurang dari kunci k . |
27 | multimap :: max_size Mengembalikan jumlah maksimum elemen yang dapat dipegang oleh multimap. |
28 | multimap :: operator = salin versi Tetapkan konten baru ke multimap dengan mengganti yang lama dan ubah ukuran jika perlu. |
29 | multimap :: operator = memindahkan versi Pindahkan konten dari satu multimap ke multimap lainnya dan ubah ukuran jika perlu. |
30 | multimap :: operator = versi daftar penginisialisasi Salin elemen dari daftar penginisialisasi ke multimap. |
31 | multimap :: rbegin Mengembalikan iterator terbalik yang menunjuk ke elemen terakhir multimap. |
32 | multimap :: rend Mengembalikan iterator terbalik yang menunjuk ke ujung kebalikan dari multimap. |
33 | multimap :: size Mengembalikan jumlah elemen yang ada di multimap. |
34 | multimap :: swap Menukar konten multimap dengan konten multimap x. |
35 | multimap :: upper_bound Mengembalikan iterator yang menunjuk ke elemen pertama yang lebih besar dari kunci k . |
36 | multimap :: value_comp Mengembalikan objek fungsi yang membandingkan objek berjenis std :: multimap :: value_type . |
Fungsi non-anggota kelebihan beban
Sr.No. | Metode & Deskripsi |
---|---|
1 | operator == Menguji apakah dua multimaps sama atau tidak. |
2 | operator! = Menguji apakah dua multimaps sama atau tidak. |
3 | operator < Menguji apakah multimap pertama kurang dari yang lain atau tidak. |
4 | multimap :: operator <= Menguji apakah multimap pertama kurang dari atau sama dengan lainnya atau tidak. |
5 | operator> Menguji apakah multimap pertama lebih besar dari yang lain atau tidak. |
6 | operator> = Menguji apakah multimap pertama lebih besar dari atau sama dengan lainnya atau tidak. |
7 | menukar() Menukar konten multimap dengan konten multimap x. |