- 内联函数本身是⼀个真正的函数
- 内联函数具有普通函数的所有⾏为唯⼀不同之处在于:内联函数会在适当的地⽅像定义宏⼀样展开,可以以空间换时间。因此,内联函数既可以避免宏函数的缺陷,也可以避免普通函数⼊栈的时间浪费
- 在普通函数函数前⾯加上 inline 关键字使之成为内联函数
- 如果有函数声明,函数本身和声明必须同时加 inline 关键字,否则视为普通函数
- 任何在“类”内部定义的函数会⾃动成为内联函数
- 下列情况,普通函数即使指定为内联函数,编译器也可能考虑不按内联编译
1)存在任何形式的循环语句
2)存在过多的条件判断语句
3)函数体过于庞⼤
4)对函数进⾏取址操作 - 使⽤⽅式建议:
1)内联仅仅只是给编译器⼀个建议,编译器不⼀定会接受这种建议
2)如果你没有将函数声明为内联函数,那么编译器也可能将此函数做内联编译(⼀个好的编译器将会内联⼩的、简单的函数)因此,不⽤刻意使⽤内联函数,可以交给编译器去⾃⾏处理。
内联函数
最新推荐文章于 2024-06-12 18:28:23 发布