在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,从而实现去重操作。

mfc 下vector怎么快速去重

原文地址: https://www.cveoy.top/t/topic/i9yL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录