当主函数在调用子函数的时候,需要记下当前程序指针寄存器的地址,执行完后根据该地址返回继续执行下面的内容,这需要花费一定的时间,如果有的函数需要频繁调用,则需要的时间会很长,有了内置函数之后会很大的简短时间的开销!
内置函数的使用是一种提高效率的办法,他是在编译时将调用函数的代码直接嵌入到主函数代码主题上去。
声明内置函数的方式很简单,只需要一个inline 关键字放在函数声明的左端。 inline int max(int a,int b); 在其后的函数定义时,可以加上inline 也可以不加
如 inline int max(int a,int b){ int c ; return c=a>b?a:b};
分析:
在编译时,编译器遇到函数调用max();时候,就将max函数体的代码内嵌到函数主体上,就跟#define 上的替换差不多!同时将实参代替形参。
使用内置函数节约了函数的时间,但是加大了代码主体长度。
警告:
内置函数不能包含复杂的控制语句,如 for(){} , swith 语句。
归纳起来:只有那些规模较小又被频繁调用的简单函数,才适合声明为inline函数。
时间: 2024-10-28 05:13:06