C++内联函数

您所在的位置:网站首页 内联函数在编译时 C++内联函数

C++内联函数

2023-04-08 18:44| 来源: 网络整理| 查看: 265

     在C语言中,我们使用宏定义函数这种借助编译器的优化技术来减少程序的执行时间,那么在C++中有没有相同的技术或者更好的实现方法呢?答案是有的,那就是内联函数。内联函数作为编译器优化手段的一种技术,在降低运行时间上非常有用。我们将从:

什么是内联函数 为什么要使用内联函数 内联函数优缺点分析 何时使用内联函数

  这四个方面对内联函数进行介绍。

 

什么是内联函数

 

          内联函数是C++的增强特性之一,用来降低程序的运行时间。当内联函数收到编译器的指示时,即可发生内联:编译器将使用函数的定义体来替代函数调用语句,这种替代行为发生在编译阶段而非程序运行阶段。

          值得注意的是,内联函数仅仅是对编译器的内联建议,编译器是否觉得采取你的建议取决于函数是否符合内联的有利条件。如何函数体非常大,那么编译器将忽略函数的内联声明,而将内联函数作为普通函数处理。

如何使函数内联

定义函数时,在函数的最前面以关键字“inline”声明函数,即可使函数称为内联声明函数。

例如:

Class A { Public: inline int add(int a, int b) { return (a + b); }; } Class A { Public: int add(int a, int b); }; inline int A::add(int a, int b) { return (a + b); }

 

为什么要使用内联函数

 

       有时候我们会写一些功能专一的函数,这些函数的函数体不大,包含了很少的执行语句。例如在计算1~1000以内的素数时,我们经常会使用开方操作使运算范围缩小,这时我们会写一个函数:

int root(int n) {   return (int)sqrt((float)n); }

 

然后我们的求范围内素数的函数可以这样写。

int prime(int n) { int i; for (i = 2; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3