首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

能简单介绍一下内联函数吗?解决思路

2012-02-27 
能简单介绍一下内联函数吗?能简单介绍一下内联函数吗?[解决办法]由于调用函数会将程序执行顺序转移到函数

能简单介绍一下内联函数吗?
能简单介绍一下内联函数吗?

[解决办法]
由于调用函数会将程序执行顺序转移到函数所存放在内存中某个地址,将函数的程序内容执行完后,再返回到转去执行该函数前的地方。这种转移操作要求在转去前要保护现场并记忆执行的地址,转回后先要恢复现场,并按原来保存地址继续执行。降低了效率。
内联函数可以解决这一问题,调用内联函数时,该函数在编译时被替代,而不是像一般函数那样是在运行时被调用。
内联函数具有一般函数的特性,它与一般函数所不同之处公在于函数调用的处理。一般函数进行调用时,要将程序执行权转到被调用函数中,然后再返回到调用它的函数中;而内联函数在调用时,是将调用表达式用内联函数体来替换。在使用内联函数应注意:
1.在内联函数内不允许用循环语句和开关语句。
2.内联函数的定义必须出现在内联函数第一次被调用之前。
3.本栏目讲到的类结构中所有在类说明内部定义的函数是内联函数。

[解决办法]
内联函数也叫内嵌函数,主要解决程序的运行效率.有的函数使用频率高.但代码去很短.
频繁地调用这个函数,就要不断的从设备中读取数据,这时可以将这个函数声明成inline,以后每次调用这个函数就可以用相应的一段代码代替,提高效率.
注意:递归函数和代码很长的函数不能用inline.

热点排行