C++知识点11:内联函数 / 内联函数和宏define的区别

关键字:inline,写在函数定义体前(不是声明)
作用:解决程序运行效率,不需要调用函数而是将函数直接嵌入到目标函数处。内联函数是真正的函数,只是在需要用到的时候,内联函数像宏一样的展开,所以取消了函数的参数压栈,减少了调用的开销。
运行时间:作用于程序编译的阶段,将函数直接嵌入到目标函数处

inline int max(int a,int b){
    return a>b?a:b
}

cout<<max(a,b)<<endl;

在编译的时候执行

cout<<a>b?a:b<<endl;

内联函数和宏替换的区别:
1.作用时间:内联函数在编译时展开,宏替换在预处理时展开
2.在编译的时候,内联函数直接被嵌入目标代码中去,而宏只是一个简单的文本替换
3.内联函数是函数:参数类型检查;在运行时可调试;访问类的成员变量;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值