利用模板机制可以显著减少冗余信息,能大幅度的结约程序代码,进一步提高面向对象程序的可重用性和可维护性。模板是实现代码重用机制的一种工具,它可以实现类型参数化,即把类型定义为参数,从而实现代码的重用,使得一段程序可以用于不同类型的对象,大幅度地提高程序设计的效率。
函数模板与类模板
模板的概念
在程序设计中往往存在这样的现象:两个或多个函数的函数体完全相同,差别仅在与它们的类型参数不同。
函数模板
所谓函数模板,实际上是建立一个通用函数,其函数返回类型和形参类型不具体指示,用一个虚拟的类型来代表,这个通用函数就称为函数模板。在调用函数时,系统会根据实参的类型(模板实参)来取代虚拟类型,从而实现不同函数的功能。
函数声明格式如下:
template <typename 类型参数> |
template
是一个声明模板的关键字,它表示声明一个模板。类型参数(通常用C++标识符表示,如T、type等)实际上是一个虚拟的类型名,使用前并未指定它是哪一种具体的类型,但使用函数模板时,必须将类型实例化。类型参数前需加关键字typename
或class
,typename
和class
的作用相同,都是表示一个虚拟的类型名(即类型参数)。
例:一个与指针有关的函数模板
|
例:函数模板的重载
|
- 本文作者: hzr
- 本文链接: https://HZR0709.github.io/2024/05/18/Cpp-progranming/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!