std::experimental::propagate_const<T>::operator=
來自 cppreference.com
< cpp | experimental | propagate const
constexpr propagate_const& operator=( propagate_const&& p ) = default; |
(1) | (庫基礎 TS v2) |
template< class U > constexpr propagate_const& operator=( propagate_const<U>&& pu ); |
(2) | (庫基礎 TS v2) |
template< class U > constexpr propagate_const& operator=( U&& u ); |
(3) | (庫基礎 TS v2) |
propagate_const& operator=( const propagate_const& ) = delete; |
(4) | (庫基礎 TS v2) |
令 t_
表示被包裝的類指標物件的私有資料成員。
1) 顯式預設的移動賦值運算子,它將 p.t_ 移動賦值給 this->t_。
2) 將 std::move(pu.t_) 賦值給 this->t_。
僅當
僅當
U
可隱式轉換為 T
時,此過載才參與過載決議。3) 將 std::forward<U>(u) 賦值給 this->t_。
僅當
僅當
U
可隱式轉換為 T
且 std::decay_t<U> 不是 propagate_const
的特化時,此過載才參與過載決議。4) 複製賦值運算子被顯式刪除。
propagate_const
不可複製。[編輯] 引數
p | - | 另一個 propagate_const 物件,從中移動 |
pu | - | 另一個不同特化型別的 propagate_const 物件,從中移動 |
u | - | 另一個物件,賦值給所包含的指標 |
[編輯] 返回值
*this.