C++语法学习(7)

1.函数模板

函数模板由模板说明和函数定义构成

模板说明的类属参数至少在函数定义中出现一次

函数参数表中可以使用类属类型参数,也可以使用普通类型

2.函数模板不允许自动类型转化
普通函数能够进行自动类型转换

3.当函数模板遇到普通函数

1 函数模板可以像普通函数一样被重载
  2 C++编译器优先考虑普通函数
  3 如果函数模板可以产生一个更好的匹配,那么选择模板
  4 可以通过空模板实参列表的语法限定编译器只通过模板匹配

4.编译器并不是把函数模板处理成能够处理任意类的函数
编译器从函数模板通过具体类型产生不同的函数
编译器会对函数模板进行两次编译
在声明的地方对模板代码本身进行编译;在调用的地方对参数替换后的代码进行编译。

5.模板类中的static成员,同一种类型的类共享一个static成员

猜你喜欢

转载自blog.csdn.net/cb673335723/article/details/81346722