iOS开发篇——C++函数模板介绍

蓝鸥iOS培训讲师推荐:对于C来说,其实C与C++的难度应该差不多少,都不是特别难,如果有基础的话,那么学起来就更容易了。

成都创新互联公司服务项目包括宁江网站建设、宁江网站制作、宁江网页制作以及宁江网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,宁江网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到宁江省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

C++为大家提供了函数模板,那么究竟函数模板是怎么回事呢?下面来了解一下!

事实上所谓的函数模板就是建立一个通用函数,其函数类型和形参类型不会具体指定,用一个虚拟的类型来代表。凡是函数体相同的函数都可以用这个模板来代替,不用定义多个函数,只需要在模板中定义一次就可以了。那么在调用函数的时候系统会根据实参的类型来取代模板中的虚拟类型,为了实现不一样的函数的的功能。为了方便大家理解,下面给出一个例子,能够让大家更好的理解。

举例:通过函数模板来实现(求两个整数或3个整数中的最大数,如果输入两个整数,程序就输出这两个整数中的最大数,如果输入3个整数,程序就输出这3个整数中的最大数)

iOS开发篇——C++函数模板介绍

数据不用cin语句输入,而在变量定义时初始化,程序第3~8行是定义模板。

定义函数模板的一般形式为:

template或template

通用函数定义通用函数定义

在建立函数模板时,只要将下面程序中定义的第一个函数首部的int改为T就可以了,也就是用虚拟的类型名T代替具体的数据类型,在对程序进行编译时,遇到第13行调用函数max(i1,i2,i3),编译系统会将函数名max与模板max相匹配,将实参的类型取代了函数模板中的虚拟类型T,此时相当于已定义了一个函数:

iOS开发篇——C++函数模板介绍

类型参数可以不仅仅是一个,可以根据自己的需要确定个数,例如:

iOS开发篇——C++函数模板介绍

那么大家可以很清楚的看到,用函数模板要比函数重载更简单,更方便。不过需要注意的是它只适合在函数的参数个数一样而类型不一样的时候使用。那么要是参数的个数不一样的话,就不能选用函数模板。


当前名称:iOS开发篇——C++函数模板介绍
新闻来源:http://scyanting.com/article/jsgihh.html