C++中宏和内联函数,函数的区别

初来乍到,自己看书理解的,写的一个小的总结,有不完全不正确的地方,望大神与前辈多多指点!

宏是在预处理器在预编译时期处理的,而内联函数是在编译控制器在编译时期处理的。内联函数和宏的优点就是在调用的时候不需要使用堆栈对
其进行数据保存和恢复,因为编译器会把内联函数和宏在调用时直接替代和展开。普通函数是当程序调用时会先把当前区域内的所有数据进行保存
也就是压栈,当在子程序中执行完成后回到主程序,继续将现场恢复,也就是出栈操作。所以宏和内联函数极大的优化了空间和时间的效率。
虽然如此,但是内联函数还在效率优化上进行了类型的安全检查和自动的转化,这一点宏却做不到,所以宏的使用是非常容易出错的!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值