std::function_ref::operator=
ja.cppreference.net より
constexpr function_ref& operator=( const function_ref& ) noexcept = default;
|
(1) | (C++26から) |
template< class T >
constexpr function_ref& operator=( T ) = delete;
|
(2) | (C++26から) |
1) コピー代入演算子は明示的にデフォルト定義されます。
std::function_ref これは copyable と TriviallyCopyable を満たします。このデフォルト定義された代入演算子は、格納されている thunk-ptr と bound-entity のシャローコピーを行います。2) ユーザー定義の代入演算子は、以下の条件がすべて満たされる場合に明示的に削除定義されます:
T が std::function_ref と同じ型ではなく、std::is_pointer_v<T> が false であり、かつ T が std::nontype_t の特殊化ではない場合。このオーバーロードは、上記の条件の制約が満たされた場合にのみオーバーロード解決に参加します。戻り値
* this
関連項目
新しい
function_ref
オブジェクトを構築する
(public member function) |
|
|
ターゲットを置換または破棄する
(
std::copyable_function
のpublic member function)
|
|
|
新しいターゲットを割り当てる
(
std::function<R(Args...)>
のpublic member function)
|
|
|
ターゲットを置換または破棄する
(
std::move_only_function
のpublic member function)
|