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

从C语言开始的C++编程生活(2)

前言

本系列文章承接C语言的学习,需要有C语言的基础才能学会哦~
第2篇主要讲的是有关于C++的缺省参数函数重载
C++才起步,都很简单呢!

目录

前言

缺省参数 

基本语法

缺省参数的作用

函数重载

基本语法

重载的作用


缺省参数 

缺省参数也可以叫做默认参数,是C语言无法实现的一种特殊功能。

基本语法

void Func(int a, int b = 20, int c = 0)
{
    printf("%d", a + b + c);
}

这段代码,声明并且定义了一个Func函数,我们可以发现,其中参数b和参数c都被赋了值。这里的b和c就是缺省(默认)参数。

使用缺省参数的函数有两种
全缺省,所有参数都是缺省参数。
半缺省左边一部分参数是普通参数,剩余的是缺省参数。

!!注意 !!半缺省参数只能统一全部排列在参数列表的右侧,且缺省参数和普通参数不可以交替放置!!

缺省参数的作用

int main()
{
    Func(30);//缺省参数不传参
    Func(1);//缺省参数部分传参 
    Func(1, 2, 30);//全部传参
    return 0;
}

 使用了缺省参数的函数,在传参时,可以有多种选择。
缺省参数全部不传参。此时,这些参数使用声明时定义的默认值(如a = 0, b = 20)。
缺省参数全部传参。此时,所有参数使用传入的值
缺省参数部分传参。此时,传了参的缺省参数使用传入的值其它的使用默认值

!!注意 !!传参只能从左到右按顺序传,不可以跳跃传参。

//!!错误示范!!
//想要第二个参数不传值
Func(1, ,3);//!!是错误的!!

//!!正确示范!!
//想要第二个参数不传值,也就是想第二个参数用默认值
Func(1,20,3);//传入默认值即可

函数重载

概念上,和JAVA的方法重载是一样的。

基本语法

void func()
{
    printf("haha\n");
}
void func(int a)
{
    printf("%d\n",2*a);
}

当两个函数同名而且参数列表不同的时候,这两个函数构成重载

什么是不同的参数列表?
类型不同 or 顺序不同 or 个数不同
其中变量标识符的不同,无法构成重载。

重载的作用

程序根据传入的参数,自行匹配应该传入到哪个函数里。

int main()
{
    func();//没有参数,对应的是上段代码第一段定义的参数列表
    func(2);//有一个参数2,对应的是上段代码第二段定义的参数列表
}

输出结果是:
haha

!!注意 !!全缺省函数和无参数函数不可以构成重构!!

//!!错误 !!
void func()
{
	printf("hhhhhhhh");
}
void func(int a = 0)
{
	printf("xxxxxxxx\n");
}
int main()
{
	func();
}

此时,程序不知道func()是要调用上一段定义还是调用下一段定义,去使用a的默认值。就会发生报错!! 

❤~~本文完结!!感谢观看!!欢迎来我博客做客~~❤

相关文章:

  • Java基础关键_028_线程(一)
  • 3.24前端模拟面试
  • C语言基础系列【28】指针进阶1:深入理解指针
  • go test相关命令
  • 医院挂号预约小程序|基于微信小程序的医院挂号预约系统设计与实现(源码+数据库+文档)
  • Tomcat相关的面试题
  • T113-S3-启动报错tee_readfdt:433finenode/firmware/opteefailedwith FDT_ERR_NOTFOUND
  • SpringBoot分布式项目中MyBatis实战技巧:从配置到性能优化
  • 3、孪生网络/连体网络(Siamese Network)
  • 将 PDF 转换为 Word — 固定布局 vs 重排布局?
  • 团体协作项目总结Git
  • 23种设计模式-备忘录(Memento)设计模式
  • ubuntu解决蓝牙耳机已连接,但没有声音
  • docker安装flink
  • OpenCV 基础全方位剖析:夯实计算机视觉开发根基
  • Idea中诡异的文件编码问题: 设置fileCodeing为UTF8但不生效
  • R 基础语法
  • 六十天Linux从0到项目搭建(第五天)(file、bash 和 shell 的区别、目录权限、默认权限umask、粘滞位、使用系统自带的包管理工具)
  • 系统思考—看见未来
  • 黄土高原风蚀区解析多源数据融合与机器学习增强路径-RWEQ+集成技术在风蚀模数估算中的全流程增强策略—从数据融合到模型耦合的精细化操作指南
  • 想查客户信息做网站/营销网站建设推广
  • 邢台网站制作市场/搜索软件
  • 宁波seo公司哪家好/seo搜索引擎优化就业前景
  • 书香气的域名做网站/百度指数 移民
  • 济南网站建设哪家强/色盲
  • 广州网站建设专家/百度店铺注册