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

C++中的哑元和内联函数

(1)只有类型而没有变量名的参数称为"哑元"
void func(int /哑元/){…}
(2)需要使用哑元的场景
1>兼容旧代码,保证函数的向下兼容性
void func(int i,int j){…}升级void func(int i){…}
void func(int i,int j){…}升级void func(int i,int/哑元/){…}
2>操作符重载中,区分前后++/–

有类型而没有形参变量名,语法当中将这样形式的参数称为是哑元,或者可以叫哑元参数,它相比于普通的函数参数来说,就是缺少一个变量名。正常在给函数定义时,它指定形参变量名主要是为了接收实参的值,然后通过形参变量名去完成相应的函数的功能,如果一个函数的参数变为哑元,它没有形参变量名了,那它传的实参也就没有办法使用了。哑元参数对于函数体的实现是没有任何作用的,那为啥还需要有哑元参数呢?因为有相应的特殊的使用场景。

哑元参数虽然对于函数体的实现没有任何作用,但是它依然占据一个参数的位置,在调用这样的函数时候,依然要给它传递相应的实参,这个实参值可以随便传,传一个1或者传一个2或者传入其他数据结果都是一样的,有点像是尸位素餐的意思。使用哑元的场景主要有两个。
第一是为了兼容旧代码,在开发时,随着产品更新迭代,有些函数会不断地优化,对于一个函数优化来说,有两个方面,一个是优化内部结构,让内部实现效率更高&


http://www.mrgr.cn/news/30456.html

相关文章:

  • 【C语言刷力扣】13.罗马数字转整数
  • 【前端面试系列】JavaScript闭包
  • 在使用element中的抽屉<el-drawer>页签<el-tabs/>组合时,echarts图表宽度显示异常问题
  • 人工智能、机器学习与深度学习:层层递进的技术解读
  • 风险数据集市整体架构及技术实现
  • Docker使用docker-compose一键部署nacos、Mysql、redis
  • github的使用
  • Redis---卸载Redis
  • PyTorch经典模型
  • java序列化对象后读取数据错误的问题
  • 初学者笔记本电脑玩转大模型系列一:利用ollama跑大模型
  • Ceph官方文档_01_Ceph简介
  • C++ prime plus-4-编程练习
  • 【读书笔记-《30天自制操作系统》-22】Day23
  • 枚举(not二分)
  • 【移动端开发】“明日头条APP”
  • 【Java】网络编程-地址管理-IP协议后序-NAT机制-以太网MAC机制
  • [2025]基于微信小程序慢性呼吸系统疾病的健康管理(源码+文档+解答)
  • 预处理、makefile、静动态库编写、nfs挂载、快捷命令
  • 白酒与朋友聚餐:如何活跃气氛,增进感情?
  • 每日OJ题_牛客_除2!(贪心+堆)
  • 2024.9.19
  • 【C++算法】模拟算法
  • 【MySQL】表的相关操作
  • linux网络编程3
  • 项目实现:云备份服务端①(文件操作、Json等工具类实现)