Perpustakaan C ++ - <iterator>
pengantar
Ini adalah objek seperti penunjuk yang bisa ditambah dengan ++, didereferensi dengan *, dan dibandingkan dengan iterator lain dengan! =
Kategori
kategori | properti | ekspresi yang valid | |||
---|---|---|---|---|---|
semua Kategori | copy-konstruktif , copy-assignable dan destructible |
|
|||
Itu bisa bertambah |
|
||||
Akses acak | Dua arah | Meneruskan | Memasukkan | Ini mendukung perbandingan kesetaraan / ketidaksetaraan |
|
Ini dapat dideferensiasi sebagai nilai r | *Sebuah a-> m |
||||
Keluaran | Dapat dideferensiasi sebagai nilai l (hanya untuk jenis iterator yang bisa berubah ) |
* a = t * a ++ = t |
|||
dapat dibuat default | X a; X () |
||||
Multi-pass: baik dereferencing maupun incrementing tidak memengaruhi dereferensiabilitas | { b = a; *a++; *b; } |
||||
Itu bisa dikurangi | --Sebuah Sebuah-- *Sebuah-- |
||||
Ini mendukung operator aritmatika + dan - | a + n n + a sebuah a - b |
||||
Ini mendukung perbandingan ketidaksetaraan ( < , > , <= dan > = ) antara iterator | a <b a> b a <= b a> = b |
||||
Ini mendukung operasi penugasan gabungan + = dan - = | a + = n a - = n |
||||
Mendukung operator dereferensi offset ( [] ) | sebuah] |
Fungsi
Sr.No. | Fungsi & Deskripsi |
---|---|
1 | muka Ini memajukan iterator dengan posisi n elemen. |
2 | jarak Ini mengembalikan jarak antara iterator. |
3 | mulai Ini digunakan untuk memulai iterator. |
4 | akhir Ini digunakan untuk mengakhiri iterator. |
5 | sebelumnya Ini digunakan untuk memindahkan iterator ke elemen sebelumnya. |
6 | lanjut Ini digunakan untuk memindahkan iterator ke elemen berikutnya. |
Generator Iterator
Sr.No. | Generator Iterator & Deskripsi |
---|---|
1 | back_inserter Ini membangun iterator penyisipan kembali. |
2 | penyisip Ini membangun masukkan iterator |
3 | make_move_iterator Ini membangun iterator bergerak. |
Kelas
Sr.No. | Kelas & Deskripsi |
---|---|
1 | iterator Itu kelas dasar iterator. |
2 | iterator_traits Ini adalah sifat iterator. |
Iterator standar
Sr.No. | Iterator & Deskripsi standar |
---|---|
1 | reverse_iterator Ini adalah iterator terbalik. |
2 | move_iterator Ini adalah iterator bergerak. |
3 | back_insert_iterator Ini adalah iterator sisipan belakang. |
4 | front_insert_iterator Ini adalah iterator sisipan depan. |
5 | insert_iterator Ini digunakan untuk memasukkan iterator. |
6 | istream_iterator Ini adalah iterator aliran input. |
7 | ostream_iterator Ini adalah iterator aliran keluaran. |
8 | istreambuf_iterator Ini adalah iterator buffer aliran masukan. |
7 | ostreambuf_iterator Ini adalah iterator buffer aliran keluaran. |
Tag kategori
Sr.No. | Tag kategori & Deskripsi |
---|---|
1 | input_iterator_tag Masukkan kategori iterator. |
2 | output_iterator_tag keluaran kategori iterator. |
3 | forward_iterator_tag Teruskan kategori iterator. |
4 | bidirectional_iterator_tag Kategori iterator dua arah. |
5 | random_access_iterator_tag Kategori iterator akses acak. |