0
点赞
收藏
分享

微信扫一扫

C++ inline的用法

@[TOC]

什么是内联函数

  • 使用inline修饰函数声明或实现都可以使其变为内联函数,但建议两个地方都加上inline关键字

    内联函数的作用

  • 编译器会将函数调用直接展开为函数体代码,相当于函数体里面的所有代码替换掉main函数的函数调用代码
  • 使用内联函数后,编译出的代码体积会变大
  • 有什么用呢,函数调用是会付出代价的,需要开辟栈空间
  • 使用内联函数后就不存在函数调用了,就不存在开辟栈和回收栈
    int max(int a, int b){
    return a > b ? a : b;
    }

    内联函数的适用场景

    1. 函数代码体积不大,尽量不要超过10行代码
    2. 频繁调用的函数
    3. inline只是建议编译器编译成内联函数,递归函数无法编译成内联函数,死循环递归无法被内联
举报

相关推荐

0 条评论