您的位置:首页 > 其它

内联函数inline

2017-08-07 19:08 232 查看
指定内联函数的方法很简单,只需要在函数定义处增加 inline
关键字。请看下面的例子:

 

#include <iostream>

using namespace std;

//内联函数,交换两个数的值

inline void swap(int *a, int *b){

    int temp;

    temp = *a;

    *a = *b;

    *b = temp;

}

int main(){

    int m, n;

    cin>>m>>n;

    cout<<m<<", "<<n<<endl;

    swap(&m, &n);

    cout<<m<<", "<<n<<endl;

    return 0;

}

当函数比较复杂时,函数调用的时空开销可以忽略,大部分的 CPU
时间都会花费在执行函数体代码上,所以我们一般是将非常短小的函数声明为内联函数。

 

由于内联函数比较短小,我们通常的做法是省略函数原型,将整个函数定义(包括函数头和函数体)放在本应该提供函数原型的地方。

缺点:

使用内联函数的缺点也是非常明显的,编译后的程序会存在多份相同的函数拷贝,如果被声明为内联函数的函数体非常大,那么编译后的程序体积也将会变得很大,所以再次强调,一般只将那些短小的、频繁调用的函数声明为内联函数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: