C++学习记录-模板-类模板的继承问题

当使用类模板的类作为父类时,其子类要指定出数据类型,否则编译器无法为子类分配内存空间。其方法有:

  1. 指定数据类型
  2. 子类也使用类模板

示例:

创建一个父类:

1
2
3
4
5
6
7
8
9
10
11
12
13
template<class T1,class T2>
class chara {
public:
T1 name;
T2 age;

public:
chara(T1 aname, T2 aage)
{
name = aname;
age = aage;
}
};

1.指定数据类型:

1
class person :public chara<string,int> {};

2.子类也使用类模板:

1
2
template<class T1, class T2 >
class person :public chara<T1,T2> {};