本系列 C++ 相关文章 仅为笔者学习笔记记录,用自己的理解记录学习!C++ 学习系列将分为三个阶段:基础篇、STL 篇、高阶数据结构与算法篇,相关重点内容如下:
- 基础篇:类与对象(涉及C++的三大特性等);
- STL 篇:学习使用 C++ 提供的 STL 相关库;
- 高阶数据结构与算法篇: 手动实现自己的 STL 库 及 设计实现高阶数据结构,如 B树、B+树、红黑树等。
本期内容:C++ 缺省参数的概念、分类及注意点
目录:
1. 缺省参数的概念
2. 缺省参数注意点(敲黑板)
3. 缺省参数的分类
- - 3.1 全缺省参数
- - 3.2 半缺省参数
【 合集链接 】
1. 缺省参数的概念
1. 参数缺省是指在声明或定义函数时为函数的参数指定一个缺省值。
2. 缺省即指的是:调用函数时,传递的参数少于函数需要的参数个数!
3. 缺省就是在定义是给参数列表的参数作初始化处理!【如下示例】
其他细节说明第二点:缺省参数注意点(敲黑板)
代码示例
void function(int a = 0, int b = 10){
std::cout << a << ' ' << b << std::endl;
}
/* 调用时说明: */
int main(){
// function 函数需要两个参数 值状况: a b
function(); // 一个参数都不传递 : 0 10
function(5); // 只传递一个 5 10
function(100,500); // 传递两个参数 100 500
return 0;
}
2. 缺省参数注意点(敲黑板)
1. 半缺省参数必须从右往左依次来给出,不能间隔着给
2. 缺省参数不能在函数声明和定义中同时出现
3. 缺省值必须是常量或者全局变量
4. C 语言不支持(编译器不支持)
3. 缺省参数的分类
3.1 全缺省参数
简而言之:全缺省参数指的是:函数参数列表的所有参数都赋予缺省值
代码示例
/* 示例 */
void function(int a = 0, int b = 10, int c = 100, int d = 1000){
std::cout << a << ' ' << b << ' ' << c << ' ' << d << std::endl;
}
3.2 半缺省参数
简而言之:半缺省参数指的是:函数参数列表的部分参数赋予缺省值
代码示例
/* 示例 */
void function(int a, int b, int c = 100, int d = 1000){
std::cout << a << ' ' << b << ' ' << c << ' ' << d << std::endl;
}
/* 错误写法:注:半缺省参数必须从右往左依次来给出,不能间隔着给 */
void function(int a = 0, int b, int c = 100, int d = 1000){
std::cout << a << ' ' << b << ' ' << c << ' ' << d << std::endl;
}