std::flat_set<Key,Compare,KeyContainer>:: flat_set
|
flat_set
(
)
: flat_set ( key_compare ( ) ) { } |
(1) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set ( const flat_set & other, const Allocator & alloc ) ; |
(2) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set ( flat_set && other, const Allocator & alloc ) ; |
(3) | (depuis C++23) |
|
explicit
flat_set
(
container_type cont,
const key_compare & comp = key_compare ( ) ) ; |
(4) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set ( const container_type & cont, const Allocator & alloc ) ; |
(5) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set
(
const
container_type
&
cont,
const
key_compare
&
comp,
|
(6) | (depuis C++23) |
|
flat_set
(
std::
sorted_unique_t
s, container_type cont,
const
key_compare
&
comp
=
key_compare
(
)
)
|
(7) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set
(
std::
sorted_unique_t
s,
const
container_type
&
cont,
|
(8) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set
(
std::
sorted_unique_t
s,
const
container_type
&
cont,
|
(9) | (depuis C++23) |
|
explicit
flat_set
(
const
key_compare
&
comp
)
: c ( ) , compare ( comp ) { } |
(10) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set ( const key_compare & comp, const Allocator & alloc ) ; |
(11) | (depuis C++23) |
|
template
<
class
Allocator
>
explicit flat_set ( const Allocator & alloc ) ; |
(12) | (depuis C++23) |
|
template
<
class
InputIter
>
flat_set
(
InputIter first, InputIter last,
|
(13) | (depuis C++23) |
|
template
<
class
InputIter,
class
Allocator
>
flat_set
(
InputIter first, InputIter last,
|
(14) | (depuis C++23) |
|
template
<
class
InputIter,
class
Allocator
>
flat_set ( InputIter first, InputIter last, const Allocator & alloc ) ; |
(15) | (depuis C++23) |
|
template
<
container-compatible-range
<
value_type
>
R
>
flat_set
(
std::
from_range_t
, R
&&
rg,
const
key_compare
&
comp
)
|
(16) | (depuis C++23) |
|
template
<
container-compatible-range
<
value_type
>
R
>
flat_set
(
std::
from_range_t
fr, R
&&
rg
)
|
(17) | (depuis C++23) |
|
template
<
container-compatible-range
<
value_type
>
R,
class
Allocator
>
flat_set ( std:: from_range_t , R && rg, const Allocator & alloc ) ; |
(18) | (depuis C++23) |
|
template
<
container-compatible-range
<
value_type
>
R,
class
Allocator
>
flat_set
(
std::
from_range_t
, R
&&
rg,
const
key_compare
&
comp,
|
(19) | (depuis C++23) |
|
template
<
class
InputIter
>
flat_set
(
std::
sorted_unique_t
s, InputIter first, InputIter last,
|
(20) | (depuis C++23) |
|
template
<
class
InputIter,
class
Allocator
>
flat_set
(
std::
sorted_unique_t
s, InputIter first, InputIter last,
|
(21) | (depuis C++23) |
|
template
<
class
InputIter,
class
Allocator
>
flat_set
(
std::
sorted_unique_t
s, InputIter first, InputIter last,
|
(22) | (depuis C++23) |
|
flat_set
(
std::
initializer_list
<
value_type
>
init,
const
key_compare
&
comp
=
key_compare
(
)
)
|
(23) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set
(
std::
initializer_list
<
value_type
>
init,
const
key_compare
&
comp,
|
(24) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set ( std:: initializer_list < value_type > init, const Allocator & alloc ) ; |
(25) | (depuis C++23) |
|
flat_set
(
std::
sorted_unique_t
s,
std::
initializer_list
<
value_type
>
init,
const
key_compare
&
comp
=
key_compare
(
)
)
|
(26) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set
(
std::
sorted_unique_t
s,
std::
initializer_list
<
value_type
>
init,
|
(27) | (depuis C++23) |
|
template
<
class
Allocator
>
flat_set
(
std::
sorted_unique_t
s,
std::
initializer_list
<
value_type
>
init,
|
(28) | (depuis C++23) |
Construit un nouvel adaptateur de conteneur à partir de diverses sources de données et éventuellement d'un objet de fonction de comparaison fourni comp et/ou d'un allocateur alloc .
c
avec la copie du contenu de
other.
c
et
compare
avec
other.
compare
.
Voir
la note d'utilisation de l'allocateur
ci-dessous.
c
avec
std
::
move
(
cont
)
et
compare
avec
comp
. Trie ensuite
c
par rapport à
comp
. Enfin, rend les éléments uniques, c'est-à-dire supprime tous les éléments sauf le premier de chaque groupe d'éléments équivalents consécutifs.
c
avec
std
::
move
(
cont
)
et
compare
avec
comp
.
[
first
,
last
)
, équivalent à
insert
(
first, last
)
;
.
c
avec le contenu de
rg
comme si par
insert_range
(
std::
forward
<
R
>
(
rg
)
)
;
.
[
first
,
last
)
. Initialise
c
avec
c
(
first, last
)
et
compare
avec
compare
(
comp
)
.
Note pour les surcharges
(13-15,20-22)
: Si
[
first
,
last
)
n'est pas un
intervalle valide
, le comportement est indéfini.
Note for overloads (4-6,13-19,23-25) : If multiple elements in the range have keys that compare equivalent, it is unspecified which element is inserted (pending LWG2844 ).
Sommaire
Note d'utilisation de l'allocateur
Les constructeurs
(2,3,5,6,8,9,11,12,14,15,17,19,21,22,24,25,27,28)
sont équivalents aux constructeurs non-alloueurs correspondants, sauf que
Paramètres
Complexité
1)
Constante.
2)
Linéaire en fonction de la taille de
other
.
3)
Identique au constructeur par déplacement correspondant du conteneur encapsulé, c'est-à-dire constant ou linéaire en fonction de la taille de
cont
.
4-6)
Linéaire en
N
si
cont
est trié par rapport à
compare
, sinon
𝓞(N·log(N))
, où
N
est la valeur de
cont.
size
(
)
avant cet appel.
7-9)
Identique au constructeur de déplacement correspondant du conteneur encapsulé, c'est-à-dire constant ou linéaire en fonction de la taille de
cont
.
10-12)
Constant.
13-15)
Linéaire en
N
si la plage d'entrée
[
first
,
last
)
est triée par rapport à
compare
, sinon
𝓞(N·log(N))
, où
N
est la valeur de
cont.
size
(
)
avant cet appel.
16-19)
Linéaire en
N
si la plage d'entrée
rg
est triée par rapport à
compare
, sinon
𝓞(N·log(N))
, où
N
est la valeur de
cont.
size
(
)
avant cet appel.
20-22)
Linéaire en fonction de la taille de
[
first
,
last
)
.
23-25)
Linéaire en
N
si les éléments de
init
sont triés par rapport à
compare
, sinon
𝓞(N·log(N))
, où
N
est la valeur de
cont.
size
(
)
avant cet appel.
26-28)
Linéaire en fonction de la taille de
init
.
Exceptions
Les appels à
NotesAprès la construction par déplacement du conteneur (surcharge (3,16-19)), les références, pointeurs et itérateurs qui se référaient initialement aux éléments dans Exemple
Voir aussi
| |||||||||||||||||||||||||||||||||||||||||||