内联函数
有inline 关键字的函数
空间换时间(多几行代码,运行速率加快)
#define _CRT_SECURE_ND_WARNINGS
#include<iostream>
using namespace std;
//1.内联函数注意事项
//类内部的成员函数 默认前面会加inline 关键字
inline void func();//内联函数声明
inline void func();//如果函数实现的时候,没有加inline关键字,那么这个函数依然不算内联函数
//函数声明和函数实现都应该加inline关键字
int main() {
system("pause");
return EXIT_SUCCESS;
}
但是c++内编译会有一些限制,以下情况编译器可能考虑不会将函数进行内联编译
1.不能存在任何形式的循环语句(例如 for)
2.不能存在过多的条件判断语句 (例如 if else 过多)
3.函数体不能过于庞大
4.不能对函数进行取址操作
- 内联函数 解决宏函数的缺陷问题
- 给编译器一个建议,加上关键字,编译器不一定按照内联处理
- 不加关键字也许编译器会偷摸给你加inline
- 成员函数默认加上关键字