请选择 进入手机版 | 继续访问电脑版
搜索
房产
装修
汽车
婚嫁
健康
理财
旅游
美食
跳蚤
二手房
租房
招聘
二手车
教育
茶座
我要买房
买东西
装修家居
交友
职场
生活
网购
亲子
情感
龙城车友
找美食
谈婚论嫁
美女
兴趣
八卦
宠物
手机

C++ 内联函数

[复制链接]
查看: 19|回复: 0

2万

主题

2万

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
76571
发表于 2020-9-16 06:35 | 显示全部楼层 |阅读模式
C++ 内联函数


  • 功能:

    • 牺牲一定的内存空间使得相应函数调用变成相应函数代码替换以达到节约时间的目的

  • 使用方法:

    • 在函数声明前加上关键字 inline
    • 在函数定义前加上关键字 inline
    • 通常做法:省略原型,将整个定义放在本应提供原型的地方
      1. inline funcType funcName(...) {...}
      复制代码
        

  • 使用环境:

    • 执行函数代码的时间相对处理函数调用机制的时间不长
    • 函数经常被调用

  • 注意事项:

    • inline 是 C++ 新增的特性。
    • 内联函数不能递归
    • 分清 C++ 内联函数和 C 宏替换的功能差异:

      • 如果 C 语言的宏执行了类似函数的功能,应考虑将他们转换为 C++ 内联函数
        1. #define SQUARE(X) X*Xb=SQUARE(4.5+7.5); //is replaced by b=4.5+7.5*4.5+7.5;c=SQUARE(c++); //is replaced by c=c++*c++inline  int SQUARE(int a, int b) { return a*b; }b=SQUARE(4.5+7.5); //is equal to b=(4.5+7.5)*(4.5+7.5)d=SQUARE(c++); //is equal to d=c*c; c=c+1
        复制代码



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

技术支持:迪恩网络科技公司  Powered by Discuz! X3.2
快速回复 返回顶部 返回列表