linux C++获取两个std::set容器差异(容器元素差异)(容器元素差别)std::set_differencestd::inserter

Posted Dontla

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux C++获取两个std::set容器差异(容器元素差异)(容器元素差别)std::set_differencestd::inserter相关的知识,希望对你有一定的参考价值。

示例:
(set_difference.cpp)

#include <iostream>
#include <set>
#include <algorithm>
#include <string>

int main()

    std::set<std::string> inCameraIdDroppedSet = "camera1", "camera2", "camera3", "camera4", "camera5";
    std::set<std::string> remainCameraIdDroppedSet = "camera2", "camera4", "camera6", "camera8", "camera10";
    std::set<std::string> diffSet;

    std::set_difference(inCameraIdDroppedSet.begin(), inCameraIdDroppedSet.end(),
                        remainCameraIdDroppedSet.begin(), remainCameraIdDroppedSet.end(),
                        std::inserter(diffSet, diffSet.begin()));

    std::cout << "The difference between the two sets is: ";
    for (const auto &x : diffSet)
    
        std::cout << x << " ";
    
    std::cout << std::endl;
    return 0;

编译运行结果:

以上是关于linux C++获取两个std::set容器差异(容器元素差异)(容器元素差别)std::set_differencestd::inserter的主要内容,如果未能解决你的问题,请参考以下文章

linux C++去重排序(std::set容器)

linux C++去重排序(std::set容器)

C++ std::set<,> operator怎么用

C++ std::set<>是什么 怎么用

从两个地图创建一个 set_difference 向量

std::set 与向量或映射的优势