如何将 std::set 的元素添加到另一个非空集
How to add elements of a std::set to another non-empty set?
set<int> A, B;
for (int i = 0; i < 100; i++) A.insert(i);
for (int i = 50; i < 150; i++) B.insert(i);
如何将集合B
的元素添加到集合A
?
换句话说,如何实现A
= Union( A
, B
)?
默认情况下,
集合只是唯一值并已排序,因此插入迭代器范围应该可以:
A.insert(B.begin(), B.end());
A.insert(B.begin(), B.end()); // done
使用
template <class InputIterator>
void std::set::insert( InputIterator first, InputIterator last );
您可以使用
另一个重载insert
,它将一对迭代器作为:
A.insert(B.begin(), B.end());
上面的代码将元素(A
中不存在)从B
复制到A
(这意味着您不需要手动处理重复项)。
在这里查看所有insert
重载:
- 标准::设置::插入的所有重载
相关文章:
- 使用std::transform将一个范围的元素添加到另一个范围中
- 在另一个类视图中添加最多2个图表的正确方法是什么
- 尝试将另一个子句添加到代码中时出错
- 使用 std::transform 将向量向量 (a) 添加到另一个向量向量 (b)
- C++将带有重载构造函数的对象添加到另一个对象
- 如何将一个 QQuickItem 扩展作为子扩展添加到另一个 QQuickItem 扩展?
- 尝试向 COM 对象添加另一个接口时出现静态强制转换错误 C2440
- 如何从一个向量中删除最小元素并添加到另一个向量,而第一个变为空?
- 将一个 UI 文件添加到另一个 UI 文件中
- 如何制作一个结构程序,在其中可以存储无限量的数据,以便每次您想要时都可以将另一个产品添加到列表中?
- 当我尝试将文件添加到另一个文件时出现怪异符号时
- 如何将元素添加到从另一个线程绑定到 XAML 的 IVector
- 对成员变量的引用在向同一向量中添加另一个实例后断开
- 将结构添加到字节向量,然后添加另一个
- 链表更改节点而不是添加另一个节点
- 添加另一个类 ListViewItemEventListener
- 为什么在添加另一个构造函数时会出现此错误
- 给定一个字符串,我如何才能只添加另一个字符串中的唯一字符
- 在已经运行的循环上添加另一个计时器
- 如何在Gtkmm c++中添加另一个Gtk::Box