deduction guides for
std::flat_map
|
Definiert in Header
<flat_map>
|
||
|
template
<
class
KeyContainer,
class
MappedContainer,
class
Compare
=
std::
less
<
typename
KeyContainer
::
value_type
>
>
|
(1) | (seit C++23) |
|
template
<
class
KeyContainer,
class
MappedContainer,
class
Allocator
>
flat_map
(
KeyContainer, MappedContainer, Allocator
)
|
(2) | (seit C++23) |
|
template
<
class
KeyContainer,
class
MappedContainer,
class
Compare,
class
Allocator
>
|
(3) | (seit C++23) |
|
template
<
class
KeyContainer,
class
MappedContainer,
class
Compare
=
std::
less
<
typename
KeyContainer
::
value_type
>
>
|
(4) | (seit C++23) |
|
template
<
class
KeyContainer,
class
MappedContainer,
class
Allocator
>
flat_map
(
std::
sorted_unique_t
, KeyContainer, MappedContainer,
|
(5) | (seit C++23) |
|
template
<
class
KeyContainer,
class
MappedContainer,
class
Compare,
class
Allocator
>
|
(6) | (seit C++23) |
|
template
<
class
InputIt,
class
Compare
=
std::
less
<
/*iter-key-t*/
<
InputIt
>>
>
|
(7) | (seit C++23) |
|
template
<
class
InputIt,
class
Compare
=
std::
less
<
/*iter-key-t*/
<
InputIt
>>
>
|
(8) | (seit C++23) |
|
template
<
ranges::
input_range
R,
class
Compare
=
std::
less
<
/*range-key-t*/
<
R
>>
,
|
(9) | (seit C++23) |
|
template
<
ranges::
input_range
R,
class
Allocator
>
flat_map
(
std::
from_range_t
, R
&&
, Allocator
)
|
(10) | (seit C++23) |
|
template
<
class
Key,
class
T,
class
Compare
=
std::
less
<
Key
>
>
flat_map
(
std::
initializer_list
<
pair
<
Key, T
>>
, Compare
=
Compare
(
)
)
|
(11) | (seit C++23) |
|
template
<
class
Key,
class
T,
class
Compare
=
std::
less
<
Key
>
>
flat_map
(
std::
sorted_unique_t
,
std::
initializer_list
<
pair
<
Key, T
>>
,
|
(12) | (seit C++23) |
|
Nur zur Darstellung dienende Hilfstyp-Aliase
|
||
|
template
<
class
InputIt
>
using
/*iter-val-t*/
=
|
( nur zur Darstellung* ) | |
|
template
<
class
InputIt
>
using
/*iter-key-t*/
=
|
( exposition only* ) | |
|
template
<
class
InputIt
>
using
/*iter-mapped-t*/
=
|
( Nur zur Darstellung* ) | |
|
template
<
class
Allocator,
class
T
>
using
/*alloc-rebind*/
=
|
( Nur zur Darstellung* ) | |
|
template
<
ranges::
input_range
Range
>
using
/*range-key-t*/
=
|
( Nur zur Darstellung* ) | |
|
template
<
ranges::
input_range
Range
>
using
/*range-mapped-t*/
=
|
( nur zur Darstellung* ) | |
Diese
Deduktionsführer
werden für
bereitgestellt, um die Ableitung von Folgendem zu ermöglichen:
Diese Überladungen nehmen nur dann an der Überladungsauflösung teil, wenn
InputIt
die Anforderungen eines
LegacyInputIterator
erfüllt,
Alloc
die Anforderungen eines
Allocator
erfüllt, und
Comp
nicht die Anforderungen eines
Allocator
erfüllt.
Hinweis: Das Ausmaß, in dem die Bibliothek feststellt, dass ein Typ nicht die Anforderungen eines
LegacyInputIterator
erfüllt, ist nicht spezifiziert, außer dass mindestens integrale Typen nicht als Input-Iteratoren qualifizieren. Ebenso ist das Ausmaß, in dem sie feststellt, dass ein Typ nicht die Anforderungen eines
Allocator
erfüllt, nicht spezifiziert, außer dass mindestens der Member-Typ
Alloc::value_type
existieren muss und der Ausdruck
std::
declval
<
Alloc
&
>
(
)
.
allocate
(
std::
size_t
{
}
)
wohlgeformt sein muss, wenn er als nicht ausgewerteter Operand behandelt wird.
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |