ไลบรารี C ++ - <iterator>

บทนำ

เป็นวัตถุที่มีลักษณะเหมือนตัวชี้ที่สามารถเพิ่มได้ด้วย ++, dereferenced ด้วย * และเปรียบเทียบกับตัววนซ้ำอื่นด้วย!

หมวดหมู่

ประเภท คุณสมบัติ นิพจน์ที่ถูกต้อง
ทุกหมวดหมู่ คัดลอกสร้างได้คัดลอกกำหนดได้และทำลายได้

X b(a);

b = a;

สามารถเพิ่มได้

++a

a++

การเข้าถึงแบบสุ่ม แบบสองทิศทาง ส่งต่อ อินพุต สนับสนุนการเปรียบเทียบความเท่าเทียม / อสมการ

a == b

a != b

สามารถ 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

หมวดหมู่ตัววนซ้ำการเข้าถึงโดยสุ่ม