每日一C之C语言inline内联函数
每天拾一个C语言贝壳,厚积薄发,积跬步以致千里。
今日贝壳:C语言inline内联函数的设立初衷与用法
初衷:引入inline内联函数的目的:减少函数调用的开销。
用法:在函数返回值前加限定词inline:如
inlineintfunction(int
n);
编译器会在源文件适当的位置生成函数代码的副本,以避免函数调用。函数角度来看,相比inline,宏虽同样能减少函数调用的开销,但宏有着无法回避的天生缺陷。
优势:inline内联函数会向宏一样展开,执行速度非常快。
局限:
1.建议:定义inline内联函数,实际上是对编译器的“建议”,编译器可能会拒绝。
2.小函数:inline内联函数如果代码量过大,编译器几乎不可能采纳内联的“建议”。
3.限制:inline内联函数内不可以含有循环等语句。
Have
a nice day !
【每日一C之十三】C 语言inline内联函数,布布扣,bubuko.com
【每日一C之十三】C 语言inline内联函数
原文:http://blog.csdn.net/lovecodeless/article/details/23097299