ไลบรารี C ++ - <iterator>
บทนำ
เป็นวัตถุที่มีลักษณะเหมือนตัวชี้ที่สามารถเพิ่มได้ด้วย ++, dereferenced ด้วย * และเปรียบเทียบกับตัววนซ้ำอื่นด้วย!
หมวดหมู่
| ประเภท | คุณสมบัติ | นิพจน์ที่ถูกต้อง | |||
|---|---|---|---|---|---|
| ทุกหมวดหมู่ | คัดลอกสร้างได้คัดลอกกำหนดได้และทำลายได้ |
|
|||
| สามารถเพิ่มได้ |
|
||||
| การเข้าถึงแบบสุ่ม | แบบสองทิศทาง | ส่งต่อ | อินพุต | สนับสนุนการเปรียบเทียบความเท่าเทียม / อสมการ |
|
| สามารถ dereferenced เป็นrvalue | * ก ก -> ม |
||||
| เอาต์พุต | สามารถยกเลิกการอ้างอิงเป็นlvalue ได้ (เฉพาะประเภทตัววนซ้ำที่เปลี่ยนแปลงได้ ) |
* a = t * a ++ = t |
|||
| ค่าเริ่มต้นที่สร้างได้ | X ก; X () |
||||
| Multi-pass: ทั้งการอ้างอิงหรือการเพิ่มขึ้นไม่ส่งผลต่อการอ้างอิง | { b = a; *a++; *b; } |
||||
| สามารถลดลงได้ | - ก ก - * ก - |
||||
| รองรับตัวดำเนินการเลขคณิต+และ- | a + n n + ก ก - น ก - ข |
||||
| สนับสนุนการเปรียบเทียบอสมการ ( < , > , <=และ> = ) ระหว่างตัวทำซ้ำ | ก <b ก> ข ก <= b a> = b |
||||
| สนับสนุนการดำเนินการกำหนดแบบผสม+ =และ- = | a + = n a - = n |
||||
| สนับสนุนตัวดำเนินการหักล้างการอ้างอิง ( [] ) | ก [n] | ||||
ฟังก์ชั่น
| ซีเนียร์ | ฟังก์ชั่นและคำอธิบาย |
|---|---|
| 1 | ล่วงหน้า มันเลื่อนตัววนซ้ำตามตำแหน่งองค์ประกอบ n |
| 2 | ระยะทาง ส่งกลับระยะห่างระหว่างตัวทำซ้ำ |
| 3 | เริ่ม ใช้เพื่อเริ่มตัววนซ้ำ |
| 4 | จบ ใช้เพื่อสิ้นสุดการวนซ้ำ |
| 5 | ก่อนหน้า ใช้เพื่อรับตัววนซ้ำไปยังองค์ประกอบก่อนหน้า |
| 6 | ต่อไป ใช้เพื่อรับตัววนซ้ำไปยังองค์ประกอบถัดไป |
เครื่องกำเนิดไฟฟ้า Iterator
| ซีเนียร์ | เครื่องกำเนิดไฟฟ้าและคำอธิบาย Iterator |
|---|---|
| 1 | back_inserter มันสร้างตัววนซ้ำแทรกกลับ |
| 2 | Inserter มันสร้างตัววนซ้ำแทรก |
| 3 | make_move_iterator มันสร้างตัวทำซ้ำย้าย |
ชั้นเรียน
| ซีเนียร์ | ชั้นเรียนและคำอธิบาย |
|---|---|
| 1 | iterator มันวนซ้ำคลาสพื้นฐาน |
| 2 | iterator_traits มันเป็นลักษณะวนซ้ำ |
ตัวทำซ้ำที่กำหนดไว้ล่วงหน้า
| ซีเนียร์ | ตัวทำซ้ำและคำอธิบายที่กำหนดไว้ล่วงหน้า |
|---|---|
| 1 | reverse_iterator มันเป็นตัวทำซ้ำแบบย้อนกลับ |
| 2 | move_iterator มันเป็นตัวทำซ้ำการย้าย |
| 3 | back_insert_iterator มันคือตัวทำซ้ำแทรกด้านหลัง |
| 4 | front_insert_iterator เป็นตัวทำซ้ำเม็ดมีดด้านหน้า |
| 5 | insert_iterator ใช้เพื่อแทรกตัววนซ้ำ |
| 6 | istream_iterator มันเป็นตัววนซ้ำสตรีมอินพุต |
| 7 | ostream_iterator เป็นตัวทำซ้ำสตรีมเอาต์พุต |
| 8 | istreambuf_iterator มันเป็นตัววนซ้ำบัฟเฟอร์สตรีมอินพุต |
| 7 | ostreambuf_iterator เป็นตัวทำซ้ำบัฟเฟอร์สตรีมเอาต์พุต |
แท็กหมวดหมู่
| ซีเนียร์ | แท็กหมวดหมู่และคำอธิบาย |
|---|---|
| 1 | input_iterator_tag ป้อนหมวดตัววนซ้ำ |
| 2 | output_iterator_tag หมวดตัววนซ้ำเอาท์พุท |
| 3 | forward_iterator_tag ส่งต่อหมวดตัววนซ้ำ |
| 4 | Bidirectional_iterator_tag หมวดหมู่ตัววนซ้ำแบบสองทิศทาง |
| 5 | random_access_iterator_tag หมวดหมู่ตัววนซ้ำการเข้าถึงโดยสุ่ม |