内联函数

一般来说,当我们定义了一个函数以后,编译器就会在内存中为其创建一个指令集,当我们调用这个函数时,程序就会跳转到该指令集处.当该函数运行完毕后,程序又会跳转到执行调用函数的下一行继续执行.假如对该函数执行了上百次调用,那么就要来回调转上百次,很明显,这是相当影响执行效率的.

c++对此应用inline来解决。

方法为:在函数声明返回值前面加上inline

1 inline int printf()//函数声明
2
3 int printf(){
4
5 ......
6
7 }

使用内联函数,编译器不会创建真正的函数,而只是将内联函数的所有代码拷贝到调用函数,这样程序在执行该调用函数时不需要来回的跳转,自然提高程序运行时的效率。

但是缺点是,如果多次调用内联函数,由于把函数代码拷贝到调用函数中,会增大代码的内存。

原文地址:https://www.cnblogs.com/CBDoctor/p/2300202.html