我正在阅读《现代C++设计》一书,想到类型列表结构可以被可变参数模板所替代。两者似乎都依赖于递归来分别处理列表中的第一个类型和其余部分。那么,类型列表能做到的事情,可变参数模板不能吗?
我正在阅读《现代C++设计》一书,想到类型列表结构可以被可变参数模板所替代。两者似乎都依赖于递归来分别处理列表中的第一个类型和其余部分。那么,类型列表能做到的事情,可变参数模板不能吗?
Typelists可以让您做一些事情。例如,您无法将可变参数包作为元函数的结果 - 没有办法表达这样的内容:
template <typename... Args>
struct argpack_id {
typedef Args result;
};
你可以使用typelist来实现这一点。template <typename... Args>
struct TypeList {};