《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){...}

相关推荐
开发者小天1 分钟前
python中使用jupyter notebook 绘制正态分布直方图 密度图 小提琴图 模仿企鹅喙长分布图
开发语言·python·jupyter
大傻^1 分钟前
Python机器学习实战:用机器学习进行情感分析 核心知识点总结
开发语言·python·机器学习
清风徐来QCQ2 分钟前
java总结
java·开发语言·数据结构
elseif1232 分钟前
循环队列(详细)GESP六级
数据结构·c++·队列·循环队列
蒸蒸yyyyzwd3 分钟前
cpp后端学习笔记
c++·笔记
冬夜戏雪3 分钟前
实习面经摘录回答(二)
java·开发语言
郑州光合科技余经理6 分钟前
从零到一:构建UberEats式海外版外卖系统
java·开发语言·前端·javascript·架构·uni-app·php
敲皮裤的代码12 分钟前
《C语言》字符函数和字符串函数
c语言
Ralph_Y14 分钟前
const_cast正确用法与风险规避
开发语言·c++
codeejun19 分钟前
每日一Go-25、Go语言进阶:深入并发模式1
开发语言·后端·golang