void Reverse(vector<int> v)
{
vector<int>::iterator itr1 = v.begin();
vector<int>::reverse_iterator itr2 = v.rbegin();
while(true)
{
swap(*itr1,*itr2);
itr1++;
if(itr1 == itr2.base() - 1) break;
itr2++;
}
}
函数应该反转向量,但是它不起作用。 谁能解释为什么?
答案 0 :(得分:3)
它将反转本地副本。你可能想要
void Reverse(vector<int>& v)
或std::reverse