Pourquoi utiliser un iterator sur des containers ?
Salut à tous, je me pose une petite question depuis quelques temps, pourquoi utiliser des iterators pour itérer sur des containers ?
Admettons qu'on ait ce vector:
Code:
1 2 3
| vector<int> myvector;
myvector.resize(10);
fill (myvector.begin(),myvector.end(),5); |
Pour itérer je fais toujours ça:
Code:
1 2 3
| for(int i = 0; i < (int) myvector.size(); i++) {
cout << myvector.at(i) << endl;
} |
En quoi est-ce mieux de faire ça ?
Code:
1 2
| for (vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it)
cout << " " << *it; |
Je trouve ça beaucoup plus contraignant à écrire ^^
Pouvez-vous m'éclairer ? Merci d'avance :)