Duplicata possible :
Pourquoi utiliser des itérateurs au lieu d'indices de tableaux ?
Je suis en train de réviser mes connaissances sur le C++ et je suis tombé sur les itérateurs. Une chose que je veux savoir est ce qui les rend si spéciaux et je veux savoir pourquoi cela :
using namespace std;
vector<int> myIntVector;
vector<int>::iterator myIntVectorIterator;
// Add some elements to myIntVector
myIntVector.push_back(1);
myIntVector.push_back(4);
myIntVector.push_back(8);
for(myIntVectorIterator = myIntVector.begin();
myIntVectorIterator != myIntVector.end();
myIntVectorIterator++)
{
cout<<*myIntVectorIterator<<" ";
//Should output 1 4 8
}
est meilleur que ça :
using namespace std;
vector<int> myIntVector;
// Add some elements to myIntVector
myIntVector.push_back(1);
myIntVector.push_back(4);
myIntVector.push_back(8);
for(int y=0; y<myIntVector.size(); y++)
{
cout<<myIntVector[y]<<" ";
//Should output 1 4 8
}
Et oui, je sais que je ne devrais pas utiliser l'espace de noms std. J'ai juste pris cet exemple sur le site de cprogramming. Alors pouvez-vous me dire pourquoi le dernier est pire ? Quelle est la grande différence ?