C 模板总结
扫描二维码
随时随地手机看文章
前言:
大家好,今天给大家分享一篇关于 c 模板总结概述.模板(Template)指 C 程序设计设计语言中采用类型作为参数的程序设计,支持通用程序设计。C 的标准库提供许多有用的函数大多结合了模板的观念,如 STL 以及 IO Stream。模板是 C 支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。模板是一种对类型进行参数化的工具;通常有两种形式:函数模板和类模板:- 函数模板 针对仅参数类型不同的函数;
- 类模板 针对仅数据成员和成员函数类型不同的类.
一、函数模板:
template返回类型 函数名(参数列表)
{
函数体
}
其中 template 和 class 是关键字,class 可以用 typename 关键字代替,在这里 typename 和 class 没区别, 括号中的参数叫模板形参,模板形参和函数形参很相像,模板形参不能为空。一但声明了模板函数就可以用模板函数的形参名声明类中的成员变量和成员函数,即可以在该函数中使用内置类型的地方都可以使用模板形参名。模板形参需要调用该模板函数时提供的模板实参来初始化模板形参,一旦编译器确定了实际的模板实参类型就称他实例化了函数模板的一个实例。比如 swap 的模板函数形式为:template void swap(T