C++入门级——缺省参数
目录
一. 概念
二. 分类
全缺省参数
半缺省参数
一. 概念
缺省参数(有些地方叫默认参数)是声明或定义函数时为函数的参数指定一个默认值。在调用该函数时,如果没有指定实参则采用该默认值,否则使用指定的实参。
void TestFunc(int a = 0)
{cout << a << endl;
}
int main()
{TestFunc(); //没有传参时,使用参数的默认值TestFunc(10); //传参时,使用指定的实参
}
二. 分类
全缺省参数
缺省全部参数
void TestFunc(int a = 10, int b = 20, int c = 30)
{cout << "a = " << a << endl;cout << "b = " << b << endl;cout << "c = " << c << endl;
}
半缺省参数
缺省部分参数
void TestFunc(int a, int b = 10, int c = 20)
{cout << "a = " << a << endl;cout << "b = " << b << endl;cout << "c = " << c << endl;
}
注意:
1. 半缺省参数必须从右往左缺省,连续的,不能间隔着给
void Test(int a = 10, int b = 20, int c = 30)
{cout << a << " " << b << " " << c << endl;
}
int main()
{Test();//全用默认的,全缺省Test(1);//只有第一个不用默认的,半缺省Test(1, 2);//只有第三个用默认的,半缺省Test(1,2,3);//都不用默认的,不缺省return 0;
}
2. 缺省参数不能在函数声明和定义中同时出现,声明和定义分离的话,必须在声明的时候给
因为如果分离了,在编译阶段,两个.cpp并没有链接在一起,只有链接阶段才会链接在一起,那么,如果是定义给了,声明没给,在调用函数的那个.cpp文件里包含了头文件,里面有有函数的声明,但是没有函数的定义,函数的声明里有参数,但是如果你想使用缺省参数,由于声明没给缺省参数,就会出现,这个函数有参数,你需要传参数进去,但是由于你想使用缺省参数而没传参数,就会出现错误因而报错
//a.h
void TestFunc(int a = 10);
// a.c
void TestFunc(int a = 20)
{}
// 注意:如果声明与定义位置同时出现,恰巧两个位置提供的值不同
//那编译器就无法确定到底该用哪个缺省值。
3. 缺省值必须是常量或者全局变量
4. C语言不支持(编译器不支持)
C++入门级——缺省参数相关推荐
- 【C++】函数缺省参数的作用
用法:void func(int param1, int param2 = 1, int param = 3) {} func(10); //等同于func(10, 1 , 3) func(10,8) ...
- 缺省参数-缺省参数的注意事项
def print_info(name, title="", gender=True):""":param title: 职位:param name: ...
- 缺省参数-指定函数缺省参数的默认值
def print_info(name, gender=True):""":param name: 班上同学的姓名:param gender: True 男生 False ...
- python笔记之函数参数(缺省参数,命名参数,不定长参数)
缺省参数 函数中定义带有初始值的形参 参数调用时,缺省参数可传,可不传 缺省参数一定在参数列表的最后面 缺省参数的数量没有限制 def x_y_sum(x,y=20): #缺省参数要在参数列表的最后p ...
- 第一周 从C走进C++ 008 函数缺省参数
1. 函数的缺省参数 C++中,定义函数的时候可以让最右边的连续若干个参数有缺省值,那么调用函数的时候,若相应位置不写参数,参数就是缺省值. void func( int x1, int x2 = ...
- C++起始(关键字,命名空间,缺省参数,函数重载(c语言为什么不支持函数重载))
1. C++关键字(C++98) 2. 命名空间 在C/C++中,变量.函数和后面要学到的类都是大量存在的,这些变量.函数和类的名称将都存在于全局作用 域中,可能会导致很多冲突.使用命名空间的目的是对 ...
- python缺省参数与多个函数返回值
缺省参数 调用函数时,缺省参数的值如果没有传入,则被认为是默认值. 下例会打印默认的age,如果age没有被传入. def printinfo( name,age = 35 ): # 打印任何传入的字 ...
- C语言 函数缺省参数 - C语言零基础入门教程
目录 一.函数简介 1.函数声明 2.函数定义 3.函数调用 4.函数形参和实参 二.函数缺省参数 1.函数全缺省参数 2.函数半缺省参数 三.注意事项 四.猜你喜欢 零基础 C/C++ 学习路线推荐 ...
- “.NET研究”谈谈C# 4.0新特性“缺省参数”的实现
C#4.0关于缺省参数的新特性,相信大家都不会陌生.所谓缺省参数,顾名思义,就是在声明方法的某个参数的时候为之指定一个默认值,在调用该方法的时候如果采用该默认值,你就无须指定该参数.和很多语言层面特性 ...
最新文章
- 以下属于linux文件系统认为的文件是,信息安全技术题库:在Linux系统中,图形文件、数据文件、文档文件等都属于()。...
- LINUX装魂斗罗游戏,魂斗罗战甲1-支援形态装置搭配思路及攻略
- msf:Known bug in WMI query, try migrating to another process
- 粗糙集的基础理论汇总
- DDL触发器与DML触发器比较
- .NET Core,.NET Framework和Xamarin有什么区别?
- 转载关于星座理论的套路
- .Net Framework3.5离线安装
- iPhone使用教程
- SSH 只能用于远程 Linux 主机?那说明你见识太小了!
- SaaSBase:最适合小团队轻量级项目管理的软件——Tower
- 腾讯翻译君在线翻译怎么翻译整个文件_很实用的PDF文档在线翻译工具,整篇PDF翻译一键搞定...
- 2019年中国公有云厂商发展状况白皮书
- Innoreader + Rsshub
- 函数式编程Haskell初探
- Echarts visualMap:piece划分方法
- 第十三届蓝桥杯大赛软件赛决赛(C/C++ 大学B组)
- Corona SDK 游戏开发引擎介绍
- 8421码 5421码 2421码 余三码
- 微信小程序开发之——比较数字大小-页面样式(2.3)