1. 基本概念
是对一批仅仅成员数据类型不同的类的抽象,程序员只要为这一批类所组成的整个类家族创建一个类模板,给出一套程序代码,就可以用来生成多种具体的类。
总结以下两点:
1)类模板用于实现类所需数据的类型参数化。
2)类模板在表示如数组、表、图等数据结构显得特别重要,这些数据结构的表示和算法不受所包含的元素类型的影响。
类模板基本语法举例:
// 参数化一个类型T,允许参数化多个类型 template<typename T> class A { public: A(T t) { this->t = t; } T &getT() { return t; } public: T t; }; // 子类从模板类继承的时候,需要让编译器知道父类的数据类型具体是什么 class B : public A<int> { public: B(int i) : A<int>(i) {} void printB() { cout << "A:" << t << endl; } }; int main() { A<int> a(100); // 需要提供类型参数 int x = a.getT(); B b(10); b.printB(); return 0; }
扫描二维码关注公众号,回复:
11256411 查看本文章