This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| 
                    cpp:stl:iterator [2021/04/07 10:20] bmonsuez  | 
                
                    cpp:stl:iterator [2022/11/18 10:48] (current) | 
            ||
|---|---|---|---|
| Line 102: | Line 102: | ||
| |[[https://en.cppreference.com/w/cpp/named_req/InputIterator|''input iterator'']] | itérateur permettant d'accéder en lecture à une donnée, supportant l'opération de comparaison et enfin le passage à l'élément suivant.| | |[[https://en.cppreference.com/w/cpp/named_req/InputIterator|''input iterator'']] | itérateur permettant d'accéder en lecture à une donnée, supportant l'opération de comparaison et enfin le passage à l'élément suivant.| | ||
| - | |[[https://en.cppreference.com/w/cpp/named_req/OutputIterator|input iterator]] | itérateur permettant d'écrire des données par exemple dans un flux supportant le passage à l'élément suivant.| | + | |[[https://en.cppreference.com/w/cpp/named_req/OutputIterator|''input iterator'']] | itérateur permettant d'écrire des données par exemple dans un flux supportant le passage à l'élément suivant.| | 
| - | |[[https://en.cppreference.com/w/cpp/named_req/ForwardIterator|forward iterator]] ajoute à l'itérateur ''input operator'' la garantie que si ''a'' et ''b'' sont deux itérateurs de même type, si ''a == b'' alors ''++a == ++b''.| | + | |[[https://en.cppreference.com/w/cpp/named_req/ForwardIterator|''forward iterator'']] | ajoute à l'itérateur ''input operator'' la garantie que si ''a'' et ''b'' sont deux itérateurs de même type, si ''a == b'' alors ''++a == ++b''.| | 
| - | |[[https://en.cppreference.com/w/cpp/named_req/ForwardIterator|forward iterator]] ajoute à l'itérateur ''input operator'' la garantie que si ''a'' et ''b'' sont deux itérateurs de même type, si ''a == b'' alors ''++a == ++b''.| | + | |[[https://en.cppreference.com/w/cpp/named_req/BidirectionalIterator|''bidirectional iterator'']] | ajoute à l'itérateur ''forward iterator'' la possibilité de revenir à l'élément précédent ((''operator --()'').| | 
| - | |[[https://en.cppreference.com/w/cpp/named_req/BidirectionalIterator|bidirectional iterator]] ajoute à l'itérateur ''forward iterator'' la possibilité de revenir à l'élément précédent ((operator --()'').| | + | |[[https://en.cppreference.com/w/cpp/named_req/RandomAccessIterator|''random access iterator'']] | ajoute à l'itérateur ''bidirectional iterator'' la possibilité de se déplacer par saut de x éléments en avant ou en arrière.| | 
| - | |[[https://en.cppreference.com/w/cpp/named_req/BidirectionalIterator|random access iterator]] ajoute à l'itérateur ''bidirectional iterator'' la possibilité de se déplacer par saut de x éléments en avant ou en arrière.| | + | |
| Un algorithme peut ne fonctionner qu'avec un type particulier d'itérateur. Ainsi un algorithme de tri comme [[https://gist.github.com/svdamani/dc57e4d1b00342d4507d|quicksort ou merge sort]] auront le plus souvent besoin que l'on leur fournissent un ''random access iterator''. | Un algorithme peut ne fonctionner qu'avec un type particulier d'itérateur. Ainsi un algorithme de tri comme [[https://gist.github.com/svdamani/dc57e4d1b00342d4507d|quicksort ou merge sort]] auront le plus souvent besoin que l'on leur fournissent un ''random access iterator''. | ||