用法:
在函数的返回值前面加上inline,例如:
作用:
内联函数的存在其实是为了解决c语言中一些问题,比如有一个频繁调用的小函数,每次调用都需要建立栈帧,压栈出栈,减少了效率,而c语言的解决方法是用宏替换,但是宏有很多缺点(语法复杂,可读性差,无法调试,没有类型检查等),所以c 就有了内联函数,在编译过程内联函数会直接展开,不必建立栈帧,以空间换时间,提高效率。
特性:
内联函数只是向编译器发送一个请求,如果设置的内联函数过长或者复杂,编译器会自行忽略掉这个请求,所以内联函数要具备规模小,调用频繁等这些特点。
注意内联函数不支持声明和定义分离,因为内联函数被展开,函数名不会进符号表,就没有函数地址,链接时就会找不到