我有一个向量声明为
std::vector<int> MyVector;
MyVector.push_back(5);
MyVector.push_back(6);
MyVector.push_back(7);
我应该如何在 for 循环中使用它?
通过使用迭代器对其进行迭代?
for (std::vector<int>::iterator it=MyVector.begin(); it!=MyVector.end(); ++it)
{
std::cout << "Vector element (*it): " << *it << std::endl;
}
还是通过它的访问迭代器?
for (std::vector<int>::size_type i=0; i<MyVector.size(); i++)
{
std::cout << "Vector element (i) : " << MyVector.at(i) << std::endl;
}
在我在互联网上找到的示例中,它们都被使用。在所有条件下,其中一个是否优于另一个?如果不是,我什么时候应该更喜欢其中一个而不是另一个?