の一部の型変換は、<type_traits>
コア言語構文を使用して表現することもできます (たとえばstd::add_const<T>::type
、 is/seems と同等ですconst T
)。std::add_lvalue_reference
、およびおそらく他の人のためのDtto 。これらの型特性の用途は何ですか?
標準がそれらなしで「不完全なツールボックス」を提供することになることを完全に理解しており、次のようなメタ的な方法での使用を想像できます。
template<typename In, template <typename> class Modifier>
struct Apply {
typedef typename Modifier<T>::type Out;
};
Apply<int, std::add_const>
構文的に表現できるこれらの特性の他のユースケースはありますか、それとも「完全性の意味から」時折のメタユースのために含まれているだけですか?