C++:缺省函数

目录

缺省函数的概念

缺省函数的类型

全缺省

半缺省

缺省函数的声明

C语言和C++中函数的区别 


缺省函数的概念

缺省函数是对于有参数的函数而言的,缺省的意思就是在函数的定义的时候对函数的参数进行初始化值;在调用的时候在缺省的参数的位置上可以不进行传参;

缺省函数的类型

全缺省

全缺省:就是函数的形参全部都进行了初始化,在调用的时候可以不使用实参进行传递;代码如下:

#include<iostream>
using namespace std;
void sl(int a=1, int b=2)
{
	cout << a << "->" << b << endl;
}
int main()
{
	sl();
	return 0;
}

函数在进行调用的时候,如果没有进行实参传递,函数会自动以默认的形参的值进行操作; 
如果调用的时候,传递了实参,那么将会以实参的值优先进行传值。

半缺省

半缺省在给形参赋默认值的时候是有讲究的,形参默认值必须从右往左进行依次设置,不能间隔跳着;像这样:

#include<iostream>
using namespace std;
void fun(int a , int b=2,int c=3)
{
	cout << a << " " << b <<" "<<c<< endl;
}
int main()
{
	fun(1);
	return 0;
}

这样我在传递形参的时候,才能正好跟对应的形参对应上去,如代码所示,由于第一个形参没有默认值,所以我必须进行传实参,但是第二个参数,有对应的形参默认值,就可以不进行传参。 

缺省函数的声明

缺省函数的声明,函数的默认值不仅可以在定义的时候进行赋默认值,在声明的时候进行赋默认值同样有效,像这样:

#include<iostream>
using namespace std;
void fun(int a , int b)
{
	cout << a << " " << b << endl;
}
void fun(int a, int b = 2);
int main()
{
	fun(1);
	return 0;
}

在函数声明中进行形参默认赋值与定义函数时赋值具有相同的效果。

C语言和C++中函数的区别 

1. C语言中函数没有指定返回类型,会默认是int类型。
2.C++中则必须指定函数返回类型
3.C语言中函数没有参数,可以传递实参。
4.C++中函数没有参数,不可以传递实参,指定为void。
5.C语言不支持设置缺省参数,C++则可以。 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/572254.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

摸龙头 交好运 五一就来龙卦山加载好运吧!

龙卦山国风嘉年华又又又来啦&#xff01; 让我看看是谁还没有上车&#xff01;赶紧把五一的行程安排起来&#xff01; 甲辰龙年全新玩法等你来解锁&#xff01; 准备好了吗&#xff0c;接下来跟我一起开启你在龙卦山的一天&#xff01; 五一特种兵的早八时间 8:00AM - 8:00…

Cooper在线协同插件:赋能团队,共筑高效协作新篇章

在数字化浪潮席卷全球的今天&#xff0c;高效协作已成为项目成功的关键要素。为了满足现代团队对协作的迫切需求&#xff0c;我们隆重推出Cooper在线协同插件——一款专为代码项目协作量身打造的精英级工具。凭借卓越的安全性、高效性和易用性&#xff0c;Cooper正迅速成为团队…

代理IP供应商的代理池大小怎么看?

代理池作为网络爬虫、数据采集和隐私保护等领域中的重要工具&#xff0c;扮演着连接真实网络和爬虫之间的桥梁。代理池的大小是影响其性能和可用性的关键因素之一。在这篇文章中&#xff0c;我们将深入探讨代理池的大小对业务的影响&#xff0c;并探讨在不同情况下如何选择合适…

代理IP干货:如何正确使用防范风险?

在今天的数字时代&#xff0c;代理IP地址已成为互联网世界中不可或缺的一部分。无论您是寻求绕过地理限制、保护个人隐私还是执行网络任务&#xff0c;代理IP地址都发挥着关键作用。我们将为您探讨代理IP地址的重要性以及如何防范潜在的风险和威胁。 一、代理IP地址的潜在风险 …

【OceanBase系列】—— 常用运维操作(备忘)

作者简介&#xff1a; 花名&#xff1a;绪宁&#xff0c;OceanBase 数据库解决方案架构师 创建租户 方法一&#xff1a;OCP 创建 确认可分配资源 具体可以分配多少内存&#xff0c;可以通过【资源管理】查看各节点的剩余资源 2. 新建租户 3. 填写租户信息 zone 优先级主要是 p…

WMS系统如何满足多种仓储模式需求

一、WMS系统的基本功能 WMS系统通常具备以下基本功能&#xff1a;入库管理、出库管理、库存管理、订单管理、报表分析等。这些功能能够实现对仓库内货物的实时监控、追踪和查询&#xff0c;确保货物的准确、高效流通。 二、WMS系统如何适应不同的仓储模式 静态仓储模式 静态…

PyCharm开发工具安装plugins插件

一. 简介 通过前面的学习&#xff0c;我们知道 python开发常用的一个开发工具&#xff08;即IDE&#xff09;是 PyCharm。 本文来简单介绍一下&#xff0c;PyCharm开发工具是如何安装 plugins插件的。其实与 vscode软件安装插件类似。 本文来学习 PyCharm开发工具安装一个中…

Github2024-04-25 开源项目日报Top10

根据Github Trendings的统计,今日(2024-04-25统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目4非开发语言项目2TypeScript项目2PowerShell项目1C++项目1Dart项目1JavaScript项目1GPT4All: 在边缘运行开源大型语言模型 创建周期:…

【数据结构(邓俊辉)学习笔记】向量04——有序向量

文章目录 0.概述1.比较器2.有序性甄别3.唯一化3.1低效算法3.1.1实现3.1.2 复杂度3.1.3 改进思路3.2 高效算法3.2.1 实现3.2.2 复杂度 4.查找4.1统一接口4.2 语义定义4.3 二分查找4.3.1 原理4.3.2 实现4.3.3 复杂度4.3.4 查找长度4.3.5 不足 4.4 Fibonacci查找4.4.1 改进思路4.4…

项目_预览和模拟器运行_真机运行鸿蒙应用---HarmonyOS4.0+鸿蒙NEXT工作笔记002

然后再来看如何使用预览,可以看到 右侧有个preview,点开就可以了 然后再有一个tools,这里 Device Manager,这个是模拟器 点开以后可以看到让我们连接,本地模拟器,还是远程模拟器,还是远程设备 这里我们选择phone 如果选择remote device,这个需要登录华为账号,会自动弹出来登…

PyTorch深度解析:Tensor——神经网络的核心构建块

在深度学习和神经网络的研究与应用中&#xff0c;Tensor&#xff08;张量&#xff09;无疑是一个核心概念。特别是在PyTorch这一强大的深度学习框架中&#xff0c;Tensor更是扮演了举足轻重的角色。本文将深入探讨PyTorch中的Tensor&#xff0c;从其基本定义、特性、操作到实际…

2024年度西安市创新联合体备案申报条件时间要求须知

一、申报条件 组建市级创新联合体需具备牵头单位、成员单位、组建协议、首席科学家等四个条件。 (一)牵头单位 1.牵头单位应为在西安市注册登记的省市产业链龙头骨干企业&#xff0c;重点支持市级重点产业链“链主”企业; 2.牵头单位一般为1家。 (二)成员单位 1.成员单位…

5分钟——快速搭建后端springboot项目

5分钟——快速搭建后端springboot项目 1. idea新建工程2. 构建pom.xml文件3. 构建application.yml配置文件4. 构建springboot启动类5. 补充增删改查代码6. 运行代码7. 下一章 1. idea新建工程 点击右上角新建一个代码工程 别的地方不太一样也不用太担心&#xff0c;先创建一个…

linux驱动-CCF-0基础

1. 时钟设备 晶振&#xff1a;提供基础时钟源的&#xff08;可分为有源晶振、无源晶振两种&#xff09;&#xff1b; PLL: 用于倍频的锁相环&#xff1b; mux: 用于多路时钟源选择&#xff1b; Divider: 用于分频的&#xff1b; gate: 用于时钟使能的与门电路等 注册函数…

Python基础09-装饰器深度解析与应用

在Python中&#xff0c;装饰器&#xff08;Decorator&#xff09;是一种设计模式&#xff0c;用于修改或增强函数或方法的行为&#xff0c;而无需更改其实际代码。装饰器允许我们以一种灵活且可重用的方式向函数添加新的功能。本文将深入探讨Python装饰器的多种用法&#xff0c…

2024最新版JavaScript逆向爬虫教程-------基础篇之JavaScript密码学以及CryptoJS各种常用算法的实现

目录 一、密码学介绍1.1 为什么要学密码学?1.2 密码学里面学哪一些 二、字符编码三、位运算四、Hex 编码与 Base64 编码4.1 Hex 编码4.2 Base64 编码 五、消息摘要算法5.1 简介5.2 JS中的MD5、SHA、HMAC、SM3 六、对称加密算法6.1 介绍6.2 加密模式和填充方式6.3 CryptoJS 中D…

Redis入门到通关之数据结构解析-IntSet

文章目录 概述IntSet升级简易源码总结 欢迎来到 请回答1024 的博客 &#x1f34e;&#x1f34e;&#x1f34e;欢迎来到 请回答1024的博客 关于博主&#xff1a; 我是 请回答1024&#xff0c;一个追求数学与计算的边界、时间与空间的平衡&#xff0c;0与1的延伸的后端开发者。 …

OpenHarmony开源软件供应链安全风险

慕冬亮&#xff0c;华中科技大学网络空间安全学院副教授&#xff0c;武汉英才&#xff0c;华中科技大学OpenHarmony技术俱乐部、开放原子开源社团指导教师。研究方向为软件与系统安全&#xff0c;在国际安全会议上发表十余篇论文&#xff0c;并获得ACM CCS 2018杰出论文奖。创立…

ocr文字识别软件是干什么的?

OCR&#xff08;Optical Character Recognition&#xff0c;光学字符识别&#xff09;文字识别软件是一种能够将图像或者扫描的文档中的文字内容转换为可编辑的文本格式的软件。它的主要功能包括&#xff1a; 1. **文字提取&#xff1a;**识别图像中的文字并提取出来&#xff0…

CSS盒子模型的认识

前言&#xff1a; 当我们打开一个网页使用F12进行调试时&#xff0c;经常可以看到如下图片&#xff0c;这便是一个盒子。 什么是盒子&#xff1a; 所谓盒子模型&#xff08;Box Model&#xff09;就是把 HTML 页面中的元素看作是一个矩形的盒子&#xff0c;也就是一个盛装内容的…
最新文章