C++模板

模板是C++最有特色的语法,也是最复杂的语法。它将类型看作一种参数来进行编程。

1. 模板函数

写一个max,求两个东西中较大的一个。

   1 int max(int a, int b) {
   2     return a>b?a:b;
   3 }
   4 
   5 double max(double a, double b) {
   6     return a>b?a:b;
   7 }
   8 
   9 string max(string a, string b) {
  10     return a>b?a:b;
  11 }

它们的算法都是类似的,只是参与运算的对象的类型不同。我们可以把类型定义成一个参数:

   1 template<class T>
   2 T max(T a, T b) {
   3     return a>b?a:b;
   4 }

2. 模板类

ch3n2k.com | Copyright (c) 2004-2020 czk.