iOS开发篇——C++函数模板介绍-创新互联
蓝鸥iOS培训讲师推荐:对于C来说,其实C与C++的难度应该差不多少,都不是特别难,如果有基础的话,那么学起来就更容易了。
建网站原本是网站策划师、网络程序员、网页设计师等,应用各种网络程序开发技术和网页设计技术配合操作的协同工作。创新互联专业提供网站建设、网站制作,网页设计,网站制作(企业站、成都响应式网站建设、电商门户网站)等服务,从网站深度策划、搜索引擎友好度优化到用户体验的提升,我们力求做到极致!C++为大家提供了函数模板,那么究竟函数模板是怎么回事呢?下面来了解一下!
事实上所谓的函数模板就是建立一个通用函数,其函数类型和形参类型不会具体指定,用一个虚拟的类型来代表。凡是函数体相同的函数都可以用这个模板来代替,不用定义多个函数,只需要在模板中定义一次就可以了。那么在调用函数的时候系统会根据实参的类型来取代模板中的虚拟类型,为了实现不一样的函数的的功能。为了方便大家理解,下面给出一个例子,能够让大家更好的理解。
举例:通过函数模板来实现(求两个整数或3个整数中的大数,如果输入两个整数,程序就输出这两个整数中的大数,如果输入3个整数,程序就输出这3个整数中的大数)
数据不用cin语句输入,而在变量定义时初始化,程序第3~8行是定义模板。
定义函数模板的一般形式为:
template
通用函数定义通用函数定义
在建立函数模板时,只要将下面程序中定义的第一个函数首部的int改为T就可以了,也就是用虚拟的类型名T代替具体的数据类型,在对程序进行编译时,遇到第13行调用函数max(i1,i2,i3),编译系统会将函数名max与模板max相匹配,将实参的类型取代了函数模板中的虚拟类型T,此时相当于已定义了一个函数:
类型参数可以不仅仅是一个,可以根据自己的需要确定个数,例如:
那么大家可以很清楚的看到,用函数模板要比函数重载更简单,更方便。不过需要注意的是它只适合在函数的参数个数一样而类型不一样的时候使用。那么要是参数的个数不一样的话,就不能选用函数模板。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享文章:iOS开发篇——C++函数模板介绍-创新互联
标题网址:http://pwwzsj.com/article/djigcc.html