C++ --------inline关键字

本文介绍了C++中的inline函数,包括其定义、编译器处理方式、优缺点、使用注意事项以及与static函数和宏函数的比较。内联函数能提高程序运行速度,但过度使用可能导致代码膨胀。在多源文件中使用时,须注意避免重定义问题,通常将其定义在头文件中。
摘要由CSDN通过智能技术生成

1.inline函数简介:

定义:由inline关键字来定义 引用的原因:用他来代替C中复杂易错不用维护的宏函数。  

 

2.编译器对inline函数的处理方法

  编译器是在编译阶段对inline函数作出处理,将调用动作替换为函数的本体,但是他只是一种建议,编译器可做可不做。

其逻辑处理方式一般采取如下措施:

1.将inline函数体复制到inline函数的调用点处,
2.为所用inline函数中的局部变量分配空间
3.将inline函数的输入参数和返回值映射到调用方法的局部变量空间中
4.if inline 函数有多个返回点,将其转变为inline函数代码块末尾的分支(用GOTO)

3.inline函数使用的一般方法

  函数定义时,在返回类型前面加上inline关键字,即把函数指定为内联。函数申明处可加可不加,但是建议加上因为这样起到了“代码即注释“的作用。

inline int  functionName(int first,int second,......){/*  */};

if inline 只修饰了申明部分,那么该函数不能成为内联函数。

inline void foo(int x,int y);//inline与函数申明放在一起

void foo(int x,int y){}

4.inline函数的优缺点

  一.内联函数对于宏函数有如下优点

    1.内联函数同宏函数一样在被调用处进行代码的展开,省去了参数压

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值