mfc 下vector怎么快速去重
在MFC中,可以使用std::set来快速去除std::vector中的重复元素。以下是一个示例代码:
#include <vector>
#include <set>
// 去重函数
template <typename T>
void removeDuplicates(std::vector<T>& vec) {
std::set<T> uniqueSet(vec.begin(), vec.end());
vec.assign(uniqueSet.begin(), uniqueSet.end());
}
int main() {
std::vector<int> vec = {1, 2, 3, 2, 1, 4, 5, 4};
// 去重
removeDuplicates(vec);
// 输出结果
for (const auto& element : vec) {
std::cout << element << " ";
}
std::cout << std::endl;
return 0;
}
在上面的示例中,removeDuplicates函数使用std::set来创建一个唯一元素的集合,然后将集合中的元素重新赋值给原始的std::vector,从而实现去重操作。
原文地址: https://www.cveoy.top/t/topic/i9yL 著作权归作者所有。请勿转载和采集!