<type_traits>
の一部の型変換は、コア言語の構文を使用して表すこともできます(例:std::add_const<T>::type
はconst T
と同じです)。 Dttoのstd::add_lvalue_reference
、およびおそらく他のもの。これらの型形質の用途は何ですか?std :: add_constなどの使用例
私は完全に標準はそれらなしで「不完全なツールボックス」を提供されるだろう理解し、そして私は、メタな方法でこのようなものの使用を想像することができます
template<typename In, template <typename> class Modifier>
struct Apply {
typedef typename Modifier<T>::type Out;
};
Apply<int, std::add_const>
は、これらの特性のために、他のユースケースがありますそれは構文的に表現することができますか、あるいは単に「完全性の意味から」と、時折のメタ・ユースのために含まれていますか?
'T'が既に' const'の場合はどうなりますか? –
@PeterWood [Works fine](http://ideone.com/mhY62n)、少なくともgcc 4.7.2 – Angew
@PeterWoodすでに修飾されていれば、標準で要求されているのと同じ型を返します。 – jrok