std::flat_multiset<Key,Compare,KeyContainer>:: insert
From cppreference.net
<
cpp
|
container
|
flat multiset
|
iterator insert
(
const
value_type
&
value
)
|
(1) | (自 C++23 起) |
|
iterator insert
(
value_type
&&
value
)
;
|
(2) | (自 C++23 起) |
|
iterator insert
(
const_iterator pos,
const
value_type
&
value
)
;
|
(3) | (自 C++23 起) |
|
iterator insert
(
const_iterator pos, value_type
&&
value
)
;
|
(4) | (自 C++23 起) |
|
template
<
class
InputIt
>
void insert ( InputIt first, InputIt last ) ; |
(5) | (自 C++23 起) |
|
template
<
class
InputIt
>
void insert ( std:: sorted_equivalent_t , InputIt first, InputIt last ) ; |
(6) | (自 C++23 起) |
|
void
insert
(
std::
initializer_list
<
key_type
>
ilist
)
;
|
(7) | (自 C++23 起) |
|
void
insert
(
std::
sorted_equivalent_t
s,
std::
initializer_list
<
key_type
>
ilist
)
;
|
(8) | (自 C++23 起) |
向容器中插入元素。保留其余等价元素的原有顺序。
1)
插入
value
。若容器已存在等价键的元素,则在该范围的
上界
插入。等价于
return
emplace
(
value
)
;
。
2)
插入
value
。若容器中存在具有等价键的元素,则在该范围的
上界
插入。等价于
return
emplace
(
std
::
move
(
value
)
)
;
。
3)
在尽可能接近
pos
之前位置处插入
value
。等价于
return
emplace_hint
(
pos, value
)
;
。
4)
在尽可能接近
pos
之前位置处插入
value
。等价于
return
emplace_hint
(
pos, std
::
move
(
value
)
)
;
。
5)
插入范围
[
first
,
last
)
中的元素,按顺序执行以下操作:
在就地合并阶段可能分配内存。
6)
插入来自范围
[
first
,
last
)
的元素。等价于
insert
(
first, last
)
;
。
7)
从初始化列表
ilist
插入元素。等价于
insert
(
ilist.
begin
(
)
, ilist.
end
(
)
)
;
。
8)
从初始化列表
ilist
插入元素。等效于
insert
(
s, ilist.
begin
(
)
, ilist.
end
(
)
)
;
。
| 关于迭代器失效的信息复制自 此处 |
目录 |
参数
| pos | - | 指向新元素将插入位置之前的迭代器 |
| value | - | 要插入的元素值 |
| first, last | - | 定义要插入元素源 范围 的迭代器对 |
| ilist | - | 要从中插入值的初始化列表 |
| s | - |
指示输入序列已排序(相对于
key_compare
)的消歧义标签
|
| 类型要求 | ||
-
InputIt
必须满足
LegacyInputIterator
的要求。
|
||
返回值
1-4)
指向被插入元素的迭代器。
5-8)
(无)
异常
1-4)
取决于底层容器。
5-8)
不提供异常安全保证。
|
本节内容不完整
原因:异常保证 1..8 |
复杂度
1-4)
线性。
6)
线性。
8)
线性。
|
本节内容不完整
原因:需重新核对复杂度:1-4, 8 |
示例
|
本节内容不完整
原因:缺少示例 |
参见
|
原地构造元素
(公开成员函数) |
|
| td> 使用提示原地构造元素 | |
|
创建从参数推断类型的
std::insert_iterator
(函数模板) |