2016-09-20から1日間の記事一覧

C++1z unique_ptrのテンプレート代入演算子に、不足していたSFINAEルールを追加

C++

unique_ptrの以下の代入演算子に、オーバーロード解決に参加する条件が不足していました。 template <class U, class E> unique_ptr& operator=(unique_ptr<U, E>&& u) noexcept; C++14時点では、以下の2つの条件になっています。 unique_ptr<U, E>::pointerが、pointerに暗黙変換可能な型</u,></u,></class>…