关于C++算法库的remove配合vector使用
  • 板块学术版
  • 楼主aluo2013
  • 当前回复4
  • 已保存回复6
  • 发布时间2024/10/31 13:34
  • 上次更新2024/10/31 18:59:44
查看原帖
关于C++算法库的remove配合vector使用
1314209
aluo2013楼主2024/10/31 13:34

这是我写的一段C++代码:

#include <cstdio> 
#include <vector>
#include <algorithm>
using namespace std;
vector<int> v = {1, 2, 3, 4, 3, 2, 1};
int main(){
	v.erase(remove(v.begin() + 3, v.begin() + 6,3), v.end());
	for(int c : v) printf("%d ",c);
	return 0;
}

我认为他应该在(下标从0开始) [3,6][3,6]v3v6v_3 \sim v_6 这一段区间中删除一个 33,并输出

1 2 3 4 2 1

可是实际上只输出了

1 2 3 4 2

这是为什么?

2024/10/31 13:34
加载中...