【发布时间】:2015-03-19 03:30:36
【问题描述】:
我在《Effective Modern C++》一书的第 189 页看到了这个表达:
template<typename T,
typename = typename std::enable_if<condition>::type>
explicit Person(T&& n);
我只是想知道“typename =”部分是什么意思。它当然看起来像模板参数的默认参数。但是你不需要像“typename some_name = ...”这样的默认参数吗?第二个模板参数没有名称,在这种情况下我没有看到第二个模板参数被使用。
附:当我在谷歌(或任何其他搜索引擎)上搜索答案时,等号总是被丢弃,这使得几乎不可能找到答案......
【问题讨论】:
标签: c++ templates metaprogramming generic-programming