Iteratoriai C++ STL

Būtina sąlyga: Įvadas į Iteratorius
Iteratoriai naudojami nurodyti atminties adresus STL konteineriai. Jie pirmiausia naudojami skaičių, simbolių ir tt sekose. Jie sumažina programos sudėtingumą ir vykdymo laiką.

Iteratorių operacijos :-

1. pradėti () :- Ši funkcija naudojama grąžinti pradinė padėtis konteinerio.

2. pabaiga () :- Ši funkcija naudojama grąžinti po to galinę padėtį konteinerio.




// C++ code to demonstrate the working of> // iterator, begin() and end()> #include> #include // for iterators> #include // for vectors> using> namespace> std;> int> main()> {> > vector <> int> >su = { 1, 2, 3, 4, 5 };>> > // Displaying vector elements using begin() and end()> > cout < <> 'The vector elements are : '> ;> > for> (ptr = ar.begin(); ptr cout < < *ptr < < ' '; return 0; }>

Išvestis:

 The vector elements are : 1 2 3 4 5 

3. avansas () :- Ši funkcija naudojama padidinti iteratoriaus padėtį iki nurodyto jo argumentuose nurodyto skaičiaus.




// C++ code to demonstrate the working of> // advance()> #include> #include // for iterators> #include // for vectors> using> namespace> std;> int> main()> {> > vector <> int> >su = { 1, 2, 3, 4, 5 };>> > // Using advance() to increment iterator position> > // points to 4> > advance(ptr, 3);> > > // Displaying iterator position> > cout < <> 'The position of iterator after advancing is : '> ;> > cout < < *ptr < <> ' '> ;> > > return> 0;> > }>

Išvestis:

 The position of iterator after advancing is : 4 

4. kitas() :- Ši funkcija grąžina naują iteratorių kad iteratorius nurodytų po to kelti pozicijas nurodyta savo argumentuose.

5. ankstesnis() :- Ši funkcija grąžina naują iteratorių kad iteratorius nurodytų sumažinus pozicijas minimas savo argumentuose.




// C++ code to demonstrate the working of> // next() and prev()> #include> #include // for iterators> #include // for vectors> using> namespace> std;> int> main()> {> > vector <> int> >su = { 1, 2, 3, 4, 5 };>> vector <> int> >::iteratorius ftr = ar.end();>> ;> > cout < < *it < <> ' '> ;> > cout < < endl;> > > // Displaying iterator position> > cout < <> 'The position of new iterator using prev() is : '> ;> > cout < < *it1 < <> ' '> ;> > cout < < endl;> > > return> 0;> }>

Išvestis:

 The position of new iterator using next() is : 4 The position of new iterator using prev() is : 3 


6. įterpti ()
:- Ši funkcija naudojama įdėkite elementus į bet kurią vietą konteineryje. Tai priima 2 argumentai, konteineris ir iteratorius į vietą, kur turi būti įterpti elementai .




// C++ code to demonstrate the working of> // inserter()> #include> #include // for iterators> #include // for vectors> using> namespace> std;> int> main()> {> > vector <> int> >su = { 1, 2, 3, 4, 5 };>> > // Using advance to set position> > advance(ptr, 3);> > > // copying 1 vector elements in other using inserter()> > // inserts ar1 after 3rd position in ar> > copy(ar1.begin(), ar1.end(), inserter(ar,ptr));> > > // Displaying new vector elements> > cout < <> 'The new vector after inserting elements is : '> ;> > for> (> int> &x : ar)> > cout < < x < <> ' '> ;> > > return> 0;> }>

Išvestis:

 The new vector after inserting elements is : 1 2 3 10 20 30 4 5 

Iteratorių tipai:

  1. Įvesties iteratoriai
  2. Išvesties iteratoriai
  3. Pirmyn Iteratorius
  4. Dvikrypčiai iteratoriai
  5. Atsitiktinės prieigos iteratoriai