在C++中,std::set
是一个关联容器,它会自动存储唯一元素,不允许重复。因此,在大多数情况下,您不需要执行任何特殊操作来去重。如果您有一个包含重复元素的std::vector
或其他容器,您可以将其转换为一个std::set
,从而自动去除重复元素。以下是一个示例:
#include#include #include int main() { std::vector vec = {1, 2, 2, 3, 4, 4, 5}; // 将向量转换为集合,从而自动去除重复元素 std::set s(vec.begin(), vec.end()); // 输出集合中的元素 for (int num : s) { std::cout << num << " "; } return 0; }
输出结果:
1 2 3 4 5
在这个示例中,我们首先创建了一个包含重复元素的std::vector
。然后,我们使用std::set
的构造函数将向量转换为一个集合。这将自动去除重复元素。最后,我们遍历集合并输出其元素。