当前位置:  编程技术>c/c++/嵌入式

C++ 关键字 inline详细介绍

    来源: 互联网  发布时间:2014-10-23

    本文导语:  1.  内联函数 在C++中我们通常定义以下函数来求两个整数的最大值: 代码如下:int max(int a, int b){ return a > b ? a : b;} 为这么一个小的操作定义一个函数的好处有: ① 阅读和理解函数 max 的调用,要比读一条等价的条件表达式并...

1.  内联函数

在C++中我们通常定义以下函数来求两个整数的最大值:

代码如下:

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

为这么一个小的操作定义一个函数的好处有:

① 阅读和理解函数 max 的调用,要比读一条等价的条件表达式并解释它的含义要容易得多

② 如果需要做任何修改,修改函数要比找出并修改每一处等价表达式容易得多

③ 使用函数可以确保统一的行为,每个测试都保证以相同的方式实现

④ 函数可以重用,不必为其他应用程序重写代码

虽然有这么多好处,但是写成函数有一个潜在的缺点:调用函数比求解等价表达式要慢得多。在大多数的机器上,调用函数都要做很多工作:调用前要先保存寄存器,并在返回时恢复,复制实参,程序还必须转向一个新位置执行

C++中支持内联函数,其目的是为了提高函数的执行效率,用关键字 inline 放在函数定义(注意是定义而非声明,下文继续讲到)的前面即可将函数指定为内联函数,内联函数通常就是将它在程序中的每个调用点上“内联地”展开,假设我们将 max 定义为内联函数:

代码如下:

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

则调用: cout


    
 
 

您可能感兴趣的文章:

  • c++模板(template)中的class和typename关键字异同比较
  • c++关键字mutable深入解析
  • 深入理解C++中常见的关键字含义
  • 探讨register关键字在c语言和c++中的差异
  • 从汇编看c++中extern关键字的使用
  • C++常对象精讲_const关键字的用法
  • 从汇编看c++中函数里面的static关键字的使用说明
  • 深入解析C++中的mutable关键字
  • 深入C++中inline关键字的使用
  • C++ Explicit关键字详细解析
  • C++ explicit关键字的应用方法详细讲解
  • C++的static关键字及变量存储位置总结
  • 深入分析C++中几个最不常用的关键字
  • 深入理解c++中virtual关键字
  • C++中关键字Struct和Class的区别
  • C++关键字typename的深入理解
  • 关于C++中的static关键字的总结
  • linux下grep命令实现查找多个关键字(与关系和或关系)
  • c#中this关键字与base关键字使用方法
  • c#访问this关键字和base关键字示例
  • 在JBuilder中,为什么编写的代码中,当代码出现关键字时,后面的部分代码就移位了,当在有关键字的那些代码行进行选择时,也会出现鼠标位
  • java 中的static关键字和final关键字的不同之处
  • this关键字如何使用?
  • transient 关键字有什么用途
  • 在下面这段代码中,如果对init方法只加synchronized关键字,则不能达到互斥的目的,还要再加上static关键字才能互斥,为什么?
  • 如何在压缩文件下搜索关键字。求命令
  • Linux字符模式下,有没有支持源码关键字的软件?
  • const是关键字?怎么用?
  • 到底true和false 是不是关键字?
  • shell下面如何获取某个关键字后面的6位字符?
  • 如果忘了某个系统调用函数,比如只记得函数名的几个关键字,如何查?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 代码文件中查找关键字
  • linux中 写shell程序,用于统计文件中关键字的个数
  • sed找到关键字所在行并将其前面的第一个字符删除的命令
  • vim 单个关键字缩进规则更改
  • 怎样在vi 中,让关键字以特定的颜色突出出来?
  • gvim怎么增加关键字?
  • 请教finally关键字的用法
  • 如何在C语言的宏中使用类型关键字
  • C#中fixed关键字的作用总结
  • destoon实现调用热门关键字的方法
  • MySQL单表多关键字模糊查询的实现方法
  • java之super关键字用法实例解析
  • 我下载的sdk1.4文档如何查找一些关键字呀,一搜索就会上线
  • 寻找一种较为方便的java代码文本编辑器(比如带有语法及关键字变色功能)?
  • 查找oracle数据库表中是否存在系统关键字的方法
  • 如何根据关键字查找某个目录下的所有文件
  • Oracle AS关键字 提示错误
  • instanceof关键字的作用是什么?
  • strictfp是什么关键字?
  • 小弟一直弄不明白this这个关键字。


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3