namespace std {
template<class T>
weak_ptr(shared_ptr<T>) -> weak_ptr<T>;
}
概要
std::shared_ptr
からstd::weak_ptr
に変換する際の、クラステンプレートの型推論補助。
例
#include <memory>
#include <type_traits>
int main()
{
std::shared_ptr<int> sp {new int(3)};
std::weak_ptr wp = sp;
static_assert(std::is_same_v<
decltype(wp),
std::weak_ptr<int>
>);
}
出力
バージョン
言語
- C++17
処理系
- Clang:
- GCC: 7.1.0 ✅
- Visual C++: ??