合并的默认模板参数集

时间:2015-09-07 19:24:03

标签: c++ templates c++11

请帮助了解以下情况

template<typename T1,typename T2=int> class A;
template<typename T1=int,typename T2> class A;
template<typename T1,typename T2> class A{ } 
// yields to  template<typename T1=int,typename T2=int> compiling fine

但当我使用非类型模板时给出错误

 template<typename T1,int i=4> class A;
 template<typename T1=int,int i> class A;
 template<typename T1,int i> class A{ }  // error : redefinition of default parameter 2

这种合并是否适用于模板类型和非类型??

0 个答案:

没有答案