码迷,mamicode.com
首页 > 其他好文 > 详细

define和inline关键字比较

时间:2015-08-06 13:19:56      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:c++   inline   内联   

    这里我们学习一下define和inline关键字的用法,以及它们的区别。

    define:定义预编译时处理的宏,只是简单的字符串替换,无类型检查

    inline:1、inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义,编译阶段完成。  2、内联函数要做类型安全检查,inline是指嵌入代码,在调用函数的地方不是跳转,而是把代码直接写到那里去,对于短小的函数来说,inline函数可以得到一定效率的提升,和c时代的宏函数相比,inline函数更加安全可靠,这个是以增加空间的消耗为代价的。


    ps:定义内联函数只是给编译器一个建议,但是最后的决定权还是在于编译器,如果函数的逻辑比较复杂(有循环递归之类的),此时则会内联失败。根据google编程规范,内联函数一般在10行以下,而且逻辑简单。



版权声明:本文为博主原创文章,未经博主允许不得转载。

define和inline关键字比较

标签:c++   inline   内联   

原文地址:http://blog.csdn.net/baidu_28312631/article/details/47314011

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!