名前空間
変種
操作

std::swap(std::variant)

提供: cppreference.com
< cpp‎ | utility‎ | variant
 
 
 
 
ヘッダ <variant> で定義
template <class... Types>
void swap(variant<Types...>& lhs, variant<Types...>& rhs) noexcept(/* see below */);
(C++17以上)

std::swap アルゴリズムの std::variant に対するオーバーロード。 実質的に lhs.swap(rhs) を呼びます。

このオーバーロードは、Types... 内のすべての T_i について、 is_move_constructible_v<T_i>is_swappable_v<T_i> がどちらも true である場合にのみ、オーバーロード解決に参加します。

目次

[編集] 引数

lhs, rhs - 値を入れ替える variant オブジェクト

[編集] 戻り値

(なし)

[編集] 例外

noexcept 指定:  
noexcept(noexcept(lhs.swap(rhs)))

[編集]

[編集] 関連項目

別の variant と交換します
(パブリックメンバ関数) [edit]