std::experimental::ranges:: exchange
From cppreference.net
<
cpp
|
experimental
|
ranges
|
Défini dans l'en-tête
<experimental/ranges/utility>
|
||
|
template
<
MoveConstructible T,
class
U
=
T
>
requires Assignable
<
T
&
, U
>
|
(ranges TS) | |
Remplace la valeur de obj par new_value et retourne l'ancienne valeur de obj , comme si par
T old_value = std::move(obj); obj = std::forward<U>(new_value); return old_value;
Table des matières |
Paramètres
| obj | - | objet dont la valeur doit être remplacée |
| new_value | - |
la valeur à assigner à
obj
|
Valeur de retour
L'ancienne valeur de obj .
Exceptions
noexcept
spécification :
noexcept
(
std::
is_nothrow_move_constructible
<
T
>
::
value
&&
std:: is_nothrow_assignable < T & , U > :: value )
std:: is_nothrow_assignable < T & , U > :: value )
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
|
(C++14)
|
remplace l'argument par une nouvelle valeur et retourne sa valeur précédente
(modèle de fonction) |