《C++避坑神器·十六》函数默认参数和占位参数

C++中函数是可以给默认参数的

注意点:

(1)一旦某个参数设置为默认参数,那跟着后面的所有参数都必须设置默认参数

(2)函数的声明和定义只能有一个可以设置默认参数,两个都设置会报错

cpp 复制代码
int f1(int a = 1, int b = 2);  //声明设置默认参数
int f2(int a, int b)  //定义不设置默认参数
{
	return a+b;
}

int f3(int a, int b = 2)  //b给了默认参数
{
	return a+b;
}

main()
{
	int i = f3(10); //12,本来函数需要传两个参数,但因为函数有了一个默认参数,现在只需要传一个参数即可。
	int j = f3(10, 20); //30,b传了参数20,这时会把默认参数2覆盖
}	

占位函数:

cpp 复制代码
int f(int i, int) 
{
	return i;
}

本身函数只需要输入一个参数即可,但有个占位参数int,所以函数在传参的时候需要填补一个int型的占位参数,并且占位参数也可以设置为默认参数,如:int f(int i, int = 10){...}

相关推荐
2401_827499992 分钟前
leetcode-热题100(3)
数据结构·算法·leetcode
啊阿狸不会拉杆3 分钟前
第二十五章:Python-pyecharts 库实现 3D 地图绘制
开发语言·python·地图
满怀10154 分钟前
Python入门(8):文件
开发语言·python
pk_xz1234565 分钟前
完整的Python程序,它能够根据两个Excel表格(假设在同一个Excel文件的不同sheet中)中的历史数据来预测未来G列数字
开发语言·python·excel
lzjava20249 分钟前
Redis数据结构之Set
java·数据结构·redis
Excuse_lighttime29 分钟前
JAVA单例模式
java·开发语言·单例模式
冷琅辞36 分钟前
Swift语言的跨平台开发
开发语言·后端·golang
独隅36 分钟前
针对Ansible执行脚本时报错“可执行文件格式错误”,以下是详细的解决步骤和示例
运维·开发语言·ansible·lua·lua5.4
@hdd39 分钟前
C++ | 文件读写(ofstream/ifstream/fstream)
c++·文件
敢敢のwings42 分钟前
C++信号与槽机制自实现
开发语言·数据库·c++