C++ --模板之类模板的继承

类模板的继承

  • 1、如果父类是一个类模板,那么子类继承父类时一定要指出父类类模板的数据类型
  • 2、如果子类不想指定父类类模板数据类型,那么子类也要变成一个类模板
//类模板的继承
//1.如果父类是一个类模板,那么子类继承父类时一定要指出父类类模板的数据类型;
//2.如果子类不想指定父类类模板数据类型,那么子类也要变成一个类模板
#include 
using namespace std;
#include 

template<class T>
class Base
{
public:
	T ttt;
};
//1、指出继承父类模板的数据类型
class Son : public Base<int>
{
public:
	int age;
};
//2、子类也变成一个类模板
template<class T1, class T>
class Son2 : public Base<T>
{
public:
	T1 name;
	Son2()
	{
		cout << "父类T的数据类型:" << typeid(T).name() << endl;
		cout << "子类T1的数据类型:" << typeid(T1).name() << endl;
	}
};
void test()
{
	Son2<string, int> s;
}
int main()
{
	test();
	return 0;
}

你可能感兴趣的:(C++,c++,模板,继承,面向对象,泛型编程)