C++ 如何在C++;?

C++ 如何在C++;?,c++,set,set-intersection,C++,Set,Set Intersection,我是一名二年级学生,正试图完成一个由一位差劲教授布置的项目。她教我们如何在BASH中执行集合交叉和对称差,但是当C++出现时,我就丢失了。 附件是我的项目中当前的代码。上下文是基于给定的文件,导入电影并找到演员。我知道我的文件读取正确,因为我已经用多种方法对其进行了测试 还附上了她描述集合操作的方式的副本。请帮忙 cout如果对输入范围进行排序,可以使用算法标题中的、和算法 #include <algorithm> #include <iterator> #includ

我是一名二年级学生,正试图完成一个由一位差劲教授布置的项目。她教我们如何在BASH中执行集合交叉和对称差,但是当C++出现时,我就丢失了。 附件是我的项目中当前的代码。上下文是基于给定的文件,导入电影并找到演员。我知道我的文件读取正确,因为我已经用多种方法对其进行了测试

还附上了她描述集合操作的方式的副本。请帮忙


cout如果对输入范围进行排序,可以使用
算法
标题中的、和算法

#include <algorithm>
#include <iterator>
#include <set>
#include <string>
#include <vector>

#include <cassert>

int main() {

    std::vector<std::string> a1{{"A", "B", "C"}};
    std::vector<std::string> a2{{"B", "C", "D", "F", "X"}};

    assert(std::is_sorted(a1.begin(), a1.end()));
    assert(std::is_sorted(a2.begin(), a2.end()));

    std::set<std::string> union_;
    std::set_union(a1.begin(), a1.end(), a2.begin(), a2.end(), 
                   std::inserter(union_, union_.begin()));

    std::set<std::string> intersection;
    std::set_intersection(a1.begin(), a1.end(), a2.begin(), a2.end(), 
                          std::inserter(intersection, intersection.begin()));

    std::set<std::string> symmetric_diff;
    std::set_symmetric_difference(a1.begin(), a1.end(), a2.begin(), a2.end(), 
                                  std::inserter(symmetric_diff, symmetric_diff.begin()));
}

为什么不使用系统(“命令”);剩下的就让狂欢作乐吧??你是说这个集合_intersection=>?你犯了什么错误?我不确定你是如何定义电影1中的演员和电影2中的演员的,但是代码在设置交集时看起来还可以。@AshwinSubramanya:使用
系统
,因为这在很多方面都是一个坏主意,我不能在一条评论的空间中列出它们。
#include <algorithm>
#include <iterator>
#include <set>
#include <string>
#include <vector>

#include <cassert>

int main() {

    std::vector<std::string> a1{{"A", "B", "C"}};
    std::vector<std::string> a2{{"B", "C", "D", "F", "X"}};

    assert(std::is_sorted(a1.begin(), a1.end()));
    assert(std::is_sorted(a2.begin(), a2.end()));

    std::set<std::string> union_;
    std::set_union(a1.begin(), a1.end(), a2.begin(), a2.end(), 
                   std::inserter(union_, union_.begin()));

    std::set<std::string> intersection;
    std::set_intersection(a1.begin(), a1.end(), a2.begin(), a2.end(), 
                          std::inserter(intersection, intersection.begin()));

    std::set<std::string> symmetric_diff;
    std::set_symmetric_difference(a1.begin(), a1.end(), a2.begin(), a2.end(), 
                                  std::inserter(symmetric_diff, symmetric_diff.begin()));
}
a1: A, B, C, 
a2: B, C, D, F, X, 

union: A, B, C, D, F, X, 
intersection: B, C, 
symmetric_difference: A, D, F, X,