C++ 具名要求:一元类型特征 (UnaryTypeTrait) (C++11 起)
来自cppreference.com
一元类型特征 (UnaryTypeTrait) 是类模板,以一个 std::integral_constant(通常是 std::bool_constant)特化描述它的模板类型形参的一项属性。
要求
- 可默认构造 (DefaultConstructible) 且可复制构造 (CopyConstructible)
- 接收一个模板类型形参(允许可选的额外模板形参)
- 公开且无歧义地从一个 std::integral_constant 特化派生,该特化被称为它的基特征(base characteristic)
- 基特征 的成员名没有被隐藏,且无歧义地可用
标准库
下列类型特征全都满足一元类型特征 (UnaryTypeTrait) :
下列标准库类模板也满足一元类型特征 (UnaryTypeTrait) :
