现在的位置: 首页 > 综合 > 正文

关于inline函数,可以作为函数参数传递的思考

2017年12月21日 ⁄ 综合 ⁄ 共 368字 ⁄ 字号 评论关闭

首先要对inline函数有一个比较深入的认识,相关的内容书中和网上有很多,个人总结与标题相关的特性如下:

 

1·inline函数是要通过编译器来处理的,而不是预处理器。(这样可以排除inline函数是通过简单的宏替换来实现代码复制的)

2·inline函数只有在调用它的地方才会被展开。也就是说,只有真正用到函数内的代码的地方,inline函数才会被展开。

 

其次要了解函数是如何作为参数被传递的

 

1·参数的传递,实质上都是单纯的数值传递(对于引用我不知道这样说是否合适),根据参数类型声明的不同,将该数值解释成变量数值或地址。对于函数参数(包括inline函数,但不包括宏定义函数)的传递,这里并不会调用到函数体的内容,仅仅是函数接口的描述。

 

声明:本人是C/C++方面的新手,以上如有不对或不妥之处,希望大家能够不吝赐教,十分感谢^-^

 

抱歉!评论已关闭.