#include<iostream>
using namespace std;
//template<typename T>//类模板
//template<typename T=char>//仅允许在类模板上使用默认模板参数
template<typename T=int,typename Y=char>
class stu
{
public:
T a;
/*stu(T t)//有参
{
a = t;
}*/
stu()//无参
{
a = 16;
}
/*void fun()
{
cout << a << endl;
}*/
void fun();
};
template<typename T , typename Y >
void stu<T,Y>::fun()
{
cout << a << endl;
}
int main()
{
//stu<char> db('a');//模板参数列表。<>中类型可以改变。
//stu<> db('a');
//stu<int,char> db(13);
//stu<int,char> db;//无参
//db.fun();
//stu<int, char>* db1 = new stu<int, char>(1);//传参。
stu<int, char>* db1 = new stu<int, char>;//除了类之外,其他任何地方出现stu都要加上模板参数。
db1->fun();
system("pause");
return 0;
}