从 min
和 max
(以及 minmax
就此而言)有新的 initializer_list 变体,但没有Variadic Template 变体?
因此,这是可以的:
int a = min( { 1,2,a,b,5 } );
但这不是:
int b = min( 1,2,a,b,5 ); // err!
我想,很多人会期望 Variadic Templates 可以轻松实现这一点,因此他们可能会感到失望。
我会说使用 V.T.对于 min
和 max
会有点矫枉过正
- 可变参数模板能够处理多种类型
- initializer lists 根据设计检查所有类型是否相同
因此 I.L.更适合这项任务。
我的解释正确吗?
最佳答案
您的解释是正确的。 N2772包含更深入的基本原理。
关于c++ - C++ 11中的最小和最大可变参数模板变体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6167834/