C++ 内联函数面试基本没遇到,但是为了万一遇到,还是简单了解一下,不然懵逼了就不好
链接:https://www.nowcoder.com/questionTerminal/c83606aa6ea04648bf10fe37c5590f97
来源:牛客网
场景:当频繁调用小函数时,为了节省函数调用的开销,可以用内联函数
注意:inline修饰函数的时候要加上函数体,不然没有用。
优点:
执行的速度快
调用时候会检查参数类型,比较安全
可以用来修饰保护成员和私有成员
(类中定义的函数不管加不加inline都会是内联函数)
缺点:
以函数复制为代价,如果过多使用,会消耗内存
如果函数体内有循环,那么执行函数代码的时间比调用要开销大
是否内联,程序员不可控。inline只是对编译器的建议,是否内联取决于编译器