设置交叉口不起作用
Set intersection not working
我正在尝试使用以下代码使两个集合相交,如果结果与空集合不同,我想将我的第一个集合插入一组集合中。
std::set<int> set1,set2;
std::set<set<int> > result;
std::set<int> intersection;
set_intersection(set1.begin(),set1.end(),set2.begin(),set2.end(),std::back_inserter(intersection));
if(!intersection.empty()) result.insert(set1);
但是我收到以下错误:'class std::set' 没有名为 'push_back' 的成员。问题是什么?
提前致谢。
std::back_inserter
使用 std::back_inserter_iterator
,在容器上调用 push_back()
。
当输出为 std::set
时使用 std::inserter
。
std::set<int> set1,set2;
std::set<int> intersection;
std::set_intersection(set1.begin(),set1.end(),set2.begin(),set2.end(),
std::inserter(intersection, intersection.begin()));
我正在尝试使用以下代码使两个集合相交,如果结果与空集合不同,我想将我的第一个集合插入一组集合中。
std::set<int> set1,set2;
std::set<set<int> > result;
std::set<int> intersection;
set_intersection(set1.begin(),set1.end(),set2.begin(),set2.end(),std::back_inserter(intersection));
if(!intersection.empty()) result.insert(set1);
但是我收到以下错误:'class std::set' 没有名为 'push_back' 的成员。问题是什么? 提前致谢。
std::back_inserter
使用 std::back_inserter_iterator
,在容器上调用 push_back()
。
当输出为 std::set
时使用 std::inserter
。
std::set<int> set1,set2;
std::set<int> intersection;
std::set_intersection(set1.begin(),set1.end(),set2.begin(),set2.end(),
std::inserter(intersection, intersection.begin()));