萃取这个词的英文是trait,萃取技术主要用于对模板中的各种模板参数进行管理。学习萃取技术的目的主要有以下两点。
- 了解标准库中许多萃取技术的实现方法
- 灵活运用并组合这些实现手法,写出功能更强大、更优雅和使用的代码。
本节所讲的内容是固定萃取方法,主要用于“传入一种类型,萃取出另外一种类型。”,例子如下:
template<typename T>
struct TraitsType;
template<>
struct TraitsType<char>
{
using RetType = int;