java 内联函数_内联函数-Java架构师必看

内联函数也称内嵌函数,它主要解决程序的运行效率。#####################问题#C/C++

内联函数也称内嵌函数,它主要解决程序的运行效率。

#####################问题#########################################

函数调用需要建立栈内存环境,进行参数传递,并产生程序执行转移,这些转移都需要时间开销。

有些函数在程序中使用率较高,但代码却很短。

我们可以在程序当中用表达式替换函数调用,但是降低了函数的可读性。

######################解决方法#################################################

使用内联函数

内联函数必须在被调用前声明或定义。因为内联函数的代码必须在被替换之前已经声称被替换的代码。

注意:

1.在内联函数内不允许用循环语句和开关语句。递归函数是不能用来做内联函数的。

2.内联函数的定义必须出现在内联函数第一次被调用之前。

3.内联函数只适合于1-5行的小函数。对于一个含有很多语句的大函数,函数调用和返回的开销相对来说是微不足道的。

#include

inline int isnumber(char); // inline 函数声名

void main()

{

char c;

while((c=cin.getc())!= '\n ')

{

if( isnumber(c) ) //调用一个小函数

cout < < "you entered a digit \n ";

else

cout < < "you entered a non-digit \n ";

}

}

int isnumber (char ch) //此处无inline,视为inline

{

return (ch> = '0 '&& ch <= '9 ')?1:0;

}

本文由来源 21aspnet,由 system_mush 整理编辑,其版权均为 21aspnet 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值