1. definition
从源代码的层次看,和函数的形式一样,只是在函数前面用inline做了修饰。但是在编译后,只是把函数体里面的代码代替函数名,而不像普通函数那样调用前保存现场,记住当前执行地址,调用后恢复现场等操作,所以执行效率高。
2. 使用时注意事项
递归函数,以及含有while, switch 等结构不能作为内联函数,即使你用inline进行了修饰,编译器也会把它处理成普通函数;应该先定义后使用
3. 和宏的比较
从定义上看,内联函数和宏差不多,但有很大区别。宏在执行时间上看是在编译之前预处理之中进行的,而内联函数是在编译时进行的,进行代码的替换,它克服了宏容易产生的二义性
阅读(1569) | 评论(0) | 转发(0) |