内联函数和宏类似,都是通过在函数调用处替换成函数代码,因此减少了函数调用过程中保护现场,压栈出栈的时空开销,所以当函数代码段较少的时候通过内联函数可以提高效率。
内联函数必须在定义处加上inline,在声明处加或不加都可以,另外在类中声明的函数默认都是加inline的。
内联函数与宏的区别:
(1)、宏是由预处理器对宏进行替代,而内联函数是通过编译器控制来实现的。
(2)、内联函数在在调用时与调用普通函数没区别,需要检查返回类型和参数类型,而宏没有,所以内敛函数更安全。
内联函数和宏类似,都是通过在函数调用处替换成函数代码,因此减少了函数调用过程中保护现场,压栈出栈的时空开销,所以当函数代码段较少的时候通过内联函数可以提高效率。
内联函数必须在定义处加上inline,在声明处加或不加都可以,另外在类中声明的函数默认都是加inline的。
内联函数与宏的区别:
(1)、宏是由预处理器对宏进行替代,而内联函数是通过编译器控制来实现的。
(2)、内联函数在在调用时与调用普通函数没区别,需要检查返回类型和参数类型,而宏没有,所以内敛函数更安全。