Soll ich einen Vektor durch einen Iterator oder durch einen Zugriffsoperator iterieren?
Ich habe einen Vektor als deklariert
std::vector<int> MyVector;
MyVector.push_back(5);
MyVector.push_back(6);
MyVector.push_back(7);
Wie soll ich es in einer for-Schleife verwenden?
Indem Sie es mit einem Iterator iterieren?
for (std::vector<int>::iterator it=MyVector.begin(); it!=MyVector.end(); ++it)
{
std::cout << "Vector element (*it): " << *it << std::endl;
}
Oder durch seinen Zugriffsiterator?
for (std::vector<int>::size_type i=0; i<MyVector.size(); i++)
{
std::cout << "Vector element (i) : " << MyVector.at(i) << std::endl;
}
In Beispielen, die ich im Internet gefunden habe, werden beide verwendet. Ist einer unter allen Umständen dem anderen überlegen? Wenn nicht, wann sollte ich eines dem anderen vorziehen?