当前位置: 首页 > news >正文

做网站的知名公司独立站平台选哪个好

做网站的知名公司,独立站平台选哪个好,单页网站建设哪里有提供,wordpress dx🎥 屿小夏 : 个人主页 🔥个人专栏 : C入门到进阶 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言🌤️函数重载☁️函数重载的概念☁️函数重载的作用☁️C支持函数重载的原理…

在这里插入图片描述

🎥 屿小夏 : 个人主页
🔥个人专栏 : C++入门到进阶
🌄 莫道桑榆晚,为霞尚满天!

文章目录

  • 📑前言
  • 🌤️函数重载
    • ☁️函数重载的概念
    • ☁️函数重载的作用
    • ☁️C++支持函数重载的原理
  • 🌤️内联函数
    • ☁️内联函数的概念
    • ☁️内联函数的作用
    • ☁️内联函数的特性
  • 🌤️全篇总结

📑前言

在上一篇文章中我们了解到了命名空间和缺省函数的存在,以及C++为什么要引入它们。本章将继续C++在C语言上扩展出的语法,以帮助大家快速入门。函数竟然还有内联的形式?函数重载,重载的是什么?本篇文章都将会做讲解。

🌤️函数重载

☁️函数重载的概念

是指在同一个作用域内,可以有多个同名函数,但它们的参数列表必须不同(参数类型、参数个数或参数顺序不同)

☁️函数重载的作用

  1. 提高代码的可读性和可维护性:通过使用相同的函数名来表示一组相关的功能,可以使代码更加清晰和易于理解。
  2. 简化函数调用:不同的参数列表可以根据不同的情况选择合适的函数进行调用,避免了编写大量的条件判断语句。
  3. 提供更多的灵活性:通过函数重载,可以根据需要提供多种不同的函数实现,满足不同的需求。

☁️C++支持函数重载的原理

C++支持函数重载,但是C语言不支持函数重载,这是为什么呢?
在C/C++中,一个程序要运行起来,需要经历以下几个阶段:预处理、编译、汇编、链接 。
在这里插入图片描述
在这里插入图片描述

  1. 实际项目通常是由多个头文件和多个源文件构成,当前a.cpp中调用了b.cpp中定义的Add函数时,编译后链接前,a.o的目标文件中没有Add的函数地址,因为Add是在b.cpp中定义的,所以Add的地址在b.o中。那么怎么办呢?

  2. 链接阶段就是专门处理这种问题,链接器看到a.o调用Add,但是没有Add的地址,就会到b.o的符号表中找Add的地址,然后链接到一起。

  3. 链接时,面对Add函数,链接接器会使用哪个名字去找呢?这里每个编译器都有自己的函数名修饰规则。

Windows下vs修饰规则过于复杂,Linux下g++修饰规则简单易懂,下面使用g++演示这个修饰后的名字。

C语言编译后:函数名字的修饰没有发生改变。
在这里插入图片描述

C++编译后:函数名字的修饰发生改变,编译器将函数参数类型信息添加到修改后的名字中。
在这里插入图片描述

以上我们可以看出gcc的函数修饰后名字不变。而g++的函数修饰后变成【_Z+函数长度+函数名+类型首字母】。

这里就理解了C语言没办法支持重载,因为同名函数没办法区分。而C++是通过函数修饰规则来区分,只要参数不同,修饰出来的名字就不一样,就支持了重载。

如果两个函数函数名和参数是一样的,返回值不同是不构成重载的,因为调用时编译器没办法区分。

🌤️内联函数

☁️内联函数的概念

内联函数是一种特殊的函数,它在调用时会被直接展开,而不是通过函数调用的方式进行执行。它通常被用来替代宏,以提高代码的执行效率和可读性。

在这里插入图片描述

在这里插入图片描述

如果在上述函数前增加inline关键字将其改成内联函数,在编译期间编译器会用函数体替换函数的调用.

☁️内联函数的作用

  1. 提高代码的执行效率:由于内联函数在调用时会被直接展开,避免了函数调用的开销,可以减少函数调用的时间消耗。
  2. 提高代码的可读性:内联函数可以将一些简单的代码片段直接嵌入到调用处,使代码更加紧凑和易于理解。

☁️内联函数的特性

  1. 函数体内的代码比较简单:由于内联函数在调用时会被直接展开,因此函数体内的代码应该比较简单,避免展开后的代码过于庞大。
  2. 函数体内不能有循环语句和递归调用:由于内联函数在调用时会被直接展开,如果函数体内有循环语句或递归调用,展开后的代码可能会过于庞大,影响代码的执行效率。
  3. 函数声明和定义必须放在同一个文件中:为了能够在调用处展开函数体,编译器需要在调用处获得函数的定义,因此函数的声明和定义必须放在同一个文件中。
  4. 内联函数适用于频繁调用、代码量较小的函数:由于内联函数在调用时会被直接展开,因此适用于频繁调用、代码量较小的函数。对于代码量较大的函数,由于展开后的代码可能会过于庞大,可能会导致可执行文件的体积增大,从而反而降低代码的执行效率。

在这里插入图片描述

🌤️全篇总结

​ 本章我们知道了函数重载和内联函数的作用和特性使用,他们在以后的使用场景出现的频率是很高的。

☁️ 好了,由于篇幅有限,本章只讲解了两个点,后面还有几个点,后续会再出两篇文章,看完这些,你的c++就算是入门啦!
看到这里了还不给博主留个:
👍 点赞🌟收藏 ⭐️ 关注!
💛 💙 💜 ❤️ 💚💓 💗 💕 💞 💘 💖
拜托拜托这个真的很重要!
你们的点赞就是博主更新最大的动力!
有问题可以评论或者私信呢秒回哦。
在这里插入图片描述

http://www.ds6.com.cn/news/34711.html

相关文章:

  • 做电影网站需要注意什么搜索引擎优化的技巧有哪些
  • wordpress直接访问站点东莞seo报价
  • word模板网站网址怎么推广
  • wordpress 数字不连续汕头seo托管
  • 幼儿园网站asp源码附近的计算机培训班
  • 企业网站的作用网络营销推广的要点
  • 镇海区建设交通局网站化妆品推广软文
  • 长春火车站停车场24小时收费标准百度刷排名百度快速排名
  • 淘宝联盟个人网站怎么做自动引流推广软件
  • 网站制作流程有哪些网站seo快速排名优化
  • 企业网站功能需求文档电商网页
  • 云虚拟主机可以做视频网站不谷歌seo优化技巧
  • 做网站公司无锡国际足联世界排名
  • 网站建设 镇江神点击恶意点击软件
  • 网站做关键词库的作用新手seo入门教程
  • 网站淘宝客一般怎么做自动收录网
  • 心理测试用什么网站做游戏代理平台有哪些
  • 广州个人网站制作苏州seo关键词优化外包
  • 鞍山做网站的常用的搜索引擎有哪些?
  • 网站建设与推广实训心得百度代理服务器
  • 深圳乐安居网站谁做的seo优化对网店的推广的作用为
  • 久久建筑网会员登陆中心专业关键词优化平台
  • 湖南省长沙市官网时空seo助手
  • 群晖 做网站 Java百度今日数据统计
  • 深圳招聘官网宁波seo推广联系方法
  • 网站安全解决方案百度收录申请入口
  • 网站一般都是用什么软件做的青岛seo整站优化招商电话
  • 格尔木市政府门户网站seo建设
  • wordpress 中毒济南seo网络优化公司
  • 阳山做网站应用商店aso