第8章 函数探幽

1.内联函数

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090928/1633897599930625000.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090928/2633897599931562500.jpg

注意:内联函数不能递归。(我自己编了程序 在内联函数用了递归 程序并没有报错 结果也正常  这句话是在C++ primer plus上看到的  我想这句话的本意应该是提倡不要在内联函数里面用递归 内联函数本来就是通过避免被调用的开销来提高执行效率  用递归就和它的初衷违背了)

2.临时变量,引用参数和const

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090929/1.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090929/2.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090929/3.jpg

3.将引用用于结构

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/1.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/2.jpg

4.将引用用于类对象

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/3.jpg

5.何时使用引用参数,指针和按值传递

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/4.jpg

6.函数重载

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/5.jpg

下面两个原型:

编译器在检查参数列表时,将把类型引用和类型本身视为同一个参数。

 https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/6.jpg

7.函数模板

      函数模板不能缩短可执行程序。最终的代码不包含任何模板,而只包含了为程序而生成的实际函数。使用模板的好处是,它使生成多个函数定义更简单,更可靠。另外,函数模板也可以重载。

8.显式具体化

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/7.jpg

C++标准使用下面的方法:

1)对于给定的函数名,可以有非模板函数,模板函数和显式具体化模板函数以及它们的重载版本。

2)显式具体化的原型和定义应以templa<>打头,并通过名称来指出类型。

3)具体化将覆盖常规模板,而非模板函数将覆盖具体化和常规模板。

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/8.jpg

 

9.实例化和具体化

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/9.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/10.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/11.jpg

10.编译器选择哪个函数版本

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/1633899177607656250.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/2633899177608906250.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/3633899177609843750.jpg

https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/4633899177610781250.jpg

  https://p-blog.csdn.net/images/p_blog_csdn_net/xuanya0214/EntryImages/20090930/5633899179726718750.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值