要清除 std::vector 中的重复元素并保持相对位置不变,可以使用 std::unique 函数。
这是一个示例代码:
#include <algorithm>
#include <vector>
int main() {
std::vector<int> v{1, 2, 2, 3, 3, 3, 4, 4, 4, 4};
// 将 v 中的重复元素清除
v.erase(std::unique(v.begin(), v.end()), v.end());
// 现在 v 中的元素为 {1, 2, 3, 4}
return 0;
}