Namespaces
Variants

std::copyable_function::operator=

ja.cppreference.net より
 
 
ユーティリティライブラリ
言語サポート
型サポート (基本型、RTTI)
ライブラリ機能テストマクロ (C++20)
プログラムユーティリティ
可変長引数関数
コルーチンサポート (C++20)
契約サポート (C++26)
三方比較
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

汎用ユーティリティ
関係演算子 (C++20で非推奨)
整数比較関数
(C++20)(C++20)(C++20)    
(C++20)
swap と 型操作
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
共通語彙型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)



 
関数オブジェクト
関数呼び出し
(C++17)(C++23)
恒等関数オブジェクト
(C++20)
透過的な演算子ラッパー
(C++14)
(C++14)
(C++14)
(C++14)  
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)

旧式のバインダとアダプタ
(C++17まで*)
(C++17まで*)
(C++17まで*)
(C++17まで*)  
(C++17まで*)
(C++17まで*)(C++17まで*)(C++17まで*)(C++17まで*)
(C++20まで*)
(C++20まで*)
(C++17まで*)(C++17まで*)
(C++17まで*)(C++17まで*)

(C++17まで*)
(C++17まで*)(C++17まで*)(C++17まで*)(C++17まで*)
(C++20まで*)
(C++20まで*)
 
 
copyable_function& operator=( const copyable_function& other );
(1) (C++26以上)
copyable_function& operator=( copyable_function&& other );
(2) (C++26以上)
copyable_function& operator=( std::nullptr_t ) noexcept;
(3) (C++26以上)
template< class F >
copyable_function& operator=( F&& f );
(4) (C++26以上)

std::copyable_function に新しいターゲットを代入するか、そのターゲットを破棄する。

1) other のターゲットのコピーを *this に代入する。あたかも auto(other).swap(*this) を実行したかのように振る舞う。
2) other のターゲットを *this にムーブするか、*this が空の場合は other のターゲット(もしあれば)を破棄する。これは auto(std::move(other)).swap(*this) によって行われる。ムーブ代入後、other は有効であるが未規定の値を持つ状態になる。
3) 現在のターゲットが存在すればそれを破棄する。呼び出し後、*this は空になる。
4) *this のターゲットを呼び出し可能な f に設定する。あるいは、f がヌル関数ポインタ、メンバ関数へのヌルポインタ、または空の std::copyable_function である場合、現在のターゲットを破棄する。これはあたかも copyable_function(std::forward<F>(f)).swap(*this); を実行したかのように振る舞う。このオーバーロードは、copyable_function のコンストラクタが F からのオーバーロード解決に参加する場合にのみ、オーバーロード解決に参加する。選択されたコンストラクタの呼び出しが ill-formed であるか未定義動作を引き起こす場合、プログラムは ill-formed であるか、未定義動作を引き起こす。

パラメータ

other - コピーまたは移動する対象となる別の std::copyable_function オブジェクト
f - 新しいターゲットを初期化するための呼び出し可能オブジェクト

戻り値

* this

例

関連項目

新しいターゲットを割り当てる
( std::function<R(Args...)> の公開メンバ関数)
ターゲットを置き換えるか破棄する
( std::move_only_function の公開メンバ関数)