C++ 使用向量类

C++ 使用向量类,c++,vector,C++,Vector,我还在学习向量类,我想知道为什么我不能 void displace(unsigned int place) { stack.erase(place); distances.erase(place); } 我被告知我需要一个迭代器。迭代器能做什么而int不能做什么?因为获取索引的重载是多余的。给定索引,您可以轻松获得相应的迭代器: stack.erase(stack.begin() + place); distances.erase(distances.begin() + p

我还在学习向量类,我想知道为什么我不能

void displace(unsigned int place)
{

    stack.erase(place);
    distances.erase(place);

}

我被告知我需要一个迭代器。迭代器能做什么而int不能做什么?

因为获取索引的重载是多余的。给定索引,您可以轻松获得相应的迭代器:

stack.erase(stack.begin() + place);
distances.erase(distances.begin() + place);

您是否了解数组,以及索引和数组指针之间的区别?