您现在的位置是:群英 > 开发技术 > 编程语言
C++内联函数的概念和语法是什么
Admin发表于 2022-04-29 16:09:01846 次浏览
这篇文章给大家分享的是“C++内联函数的概念和语法是什么”,文中的讲解内容简单清晰,对大家学习和理解有一定的参考价值和帮助,有这方面学习需要的朋友,接下来就跟随小编一起学习一下“C++内联函数的概念和语法是什么”吧。


一、C++ 内联函数

1.内联

C 语言中有宏函数的概念。宏函数的特点是内嵌到调用代码中去,避免了函数调用的开销。但是由于宏函数的处理发生在预处理阶段,缺失了语法检测和有可能带来的语意差错。

2.语法

C++提供了 inline 关键字,实现了真正的内嵌。

宏函数 VS inline函数

#include <iostream>
#include <string.h>
using namespace std;
//优点:内嵌代码,辟免压栈与出栈的开销
//缺点: 代码替换,易使生成代码体积变大,易产生逻辑错误,无类型检查
#define SQR(x) ((x)*(x))
//优点:高度抽象,避免重复开发,类型检查
//缺点: 压栈与出栈,带来开销
inline int sqr(int x)
{
	return (x)*(x);
}
int main()
{
	int i=0;
	while(i<5)
	{
		printf("%d\n",SQR(i++));
		printf("%d\n",i);
		printf("%d\n",sqr(i++));
		printf("%d\n",i);
	}	
	return 0;
}

3.评价

引入内联函数的目的是为了解决程序中函数调用的效率问题,这么说吧,程序在编译器编译的时候,编译器将程序中出现的内联函数的调用表达式用内联函数的函数体进行替换,而对于其他的函数,都是在运行时候才被替代。这其实就是个空间代价换时间的i节省。所以内联函数一般都是1-5行的小函数。在使用内联函数时要留神:

1.在内联函数内不允许使用循环语句和开关语句;

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

3.类结构中所在的类说明内部定义的函数是内联函数;

总结


到此这篇关于“C++内联函数的概念和语法是什么”的文章就介绍到这了,感谢各位的阅读,更多相关C++内联函数的概念和语法是什么内容,欢迎关注群英网络资讯频道,小编将为大家输出更多高质量的实用文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: c 内联函数
相关信息推荐
2022-12-24 11:47:02 
摘要:php数组的两种类型:1、索引数组,下标(键名)由数字组成,默认从0开始自动递增,每个数字对应一个数组元素在数组中的位置。2、关联数组,下标(键名)由字符串或字符串、数字混合的形式组成;如果一个数组中有一个键名不是数字,那么这个数组就是关联数组。
2021-12-27 19:05:50 
摘要:学习C语言的朋友都清楚C语言中指针是比价难学习和理解的知识,一些朋友在学习C语言指针时,有看到野指针和空指针,那么野指针和空指针究竟是什么意思呢?有何用处?今天我们就来了解看看。
2022-05-28 17:11:17 
摘要:Java中boolean类型占用字节:1、1个bit,理由是boolean类型的值只有true和false两种逻辑值,在编译后会使用1和0来表示;2、1个字节,理由是虽然编译后1和0只需占用1位空间,但计算机处理数据的最小单位是1个字节。
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部