程序员简友广场想法

第八章 函数探幽(1)c++内联函数

2019-12-22  本文已影响0人  阿厉a_li

    c++赋予了一些新的关于函数的特性,包括,内联函数,按引用传递变量默认的参数值函数重载(多态),以及模板函数

(一)c++内联函数

1.什么是内联函数

    内联函数是为了提高程序的运行速度而进行的一项改进,内联函数是在编译阶段就把代码复制到调用他的位置,而不是跟其他普通函数那样,在运行的时候跳到函数的地址处运行,因此可以削减掉调用函数传递地址保存地址等的时间。内联函数执行起来比其它的普通函数稍快,但是要占用更多的内存。一般用于代码较短,并且多次调用,而且执行时间比调用时间要短得多的场合(比如for循环中的比较简单的函数)。

2.内联函数的使用方法

    在函数声明前加上关键字inline;函数定义前加上关键字inline;通常的做法是在声明的时候同时将定义加上去,并且只写在一行内(如果一行写不下,那么一般情况下就说明这个函数作为内联函数不太合适)。需要注意的是,内联函数不能递归调用内联函数和常规函数一样,也是按值传递参数的,它的原始实现方式是宏,但宏不能实现按值传递函数,这在很多时候会出现问题,因此用c的宏定义的函数应尽量转换为c++的内联函数实现。

上一篇 下一篇

猜你喜欢

热点阅读