inline是C++关键字,在函数声明或定义中,函数返回类型前加上关键字inline,即可以把函数指定为内联函数。这样可以解决一些频繁调用的函数大量消耗栈空间(栈内存)的问题。关键字inline必须与函数定义放在一起才能使函数成为内联函数,仅仅将inline放在函数声明前面不起任何作用。inline是一种“用于实现”的关键字,而不是一种“用于声明”的关键字。
可以通过上图方式获取私有成员§;
以后您想要获取私有成员,而又不希望它被赋值、被裸露出来,那么就可以使用inline的方式,为什么说它效率比较高呢?因为在编译函数的时候,编译器会将该函数的代码副本放在每个调用该函数的地方
inline 不仅可以使用在全局函数中,还可以用在类成员中、结构体中。
如果您一旦决定一个函数是inline的,就不要将其放在CPP中,而是放在.h中
“.h文件是C语言和【C++】语言的头文件,一般在【.h】类的头文件里面只放入函数声明,宏定义,函数原型,而具体的实现在【.cpp】文件里面。”
需注意:
1、放在.h中
2、内部不要太长!大概不要超过五到十行,越长的话,它就没有这个内联的效果了,甚至可能引起代码效率变低
3、内联中不要出现For、switch、递归,如果函数中出现了这些比较复杂的运算,就别用inline了
还有一个叫做Forceinline,跟inline是差不多的,但是要包含头文件
如果你当前的代码中有一些变量需要暴露在外,给其他人访问,那么就可以用inline;