一、常规默认参数 类型模板参数可以有默认值。但是指定默认值有个规矩:如果某个模板参数有默认值,那么从这个有默认值的模板参数开始,后面的所偶模板参数都得有默认值。 template<typename T1 = char, typename T2 = int> struct Ty01 { Ty01() { cout << "Ty01(T a,T b)泛化版本\n"; }