std::same_as
提供: cppreference.com
ヘッダ <concepts> で定義 | ||
template<class T, class U > concept same_as =/* see below */; | (C++20以上) | |
コンセプト same_as<T, U>
は、 T
と U
が同じ型を表す場合に限り、満たされます。
std::same_as<T, U> は std::same_as<U, T> を含み、逆も同様です。
[編集] 実装例
namespace detail {template<class T, class U > concept SameHelper =std::is_same_v<T, U>;} template<class T, class U > concept same_as = detail::SameHelper<T, U>&& detail::SameHelper<U, T>; |
[編集] 関連項目
(C++11) | 2つの型が同じかどうか調べます (クラステンプレート) |