欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

函数默认参数、函数的占位参数

程序员文章站 2024-03-17 16:00:22
...

一、函数的默认参数

1.在C++中函数的形参是可以有默认值的

首先在我们正常使用C++的时候如下面代码:都是世代传承是

#include<iostream>
using namespace std;
//函数的默认参数
int func(int a, int b, int c)
{
	return a + b + c;
}
int main()
{
	cout << func(10,20, 30) << endl;
	system("pause");
	return 0;
}

其输出结果为:60.

2.我们对参数设定默认值后

#include<iostream>
using namespace std;
//函数的默认参数
int func(int a=10, int b =20, int c=30)
{
	return a + b + c;
}
int main()
{
	cout << func(10,30,30) << endl;
	system("pause");
	return 0;
}

其输出结果变为70了。 

 如果我们自己传入了数据就用传入的数据,没有传入的话就用默认值。

注意事项:

1.如果某个位置已经有了默认值,那么这个位置从左往右都必须要有默认值

函数默认参数、函数的占位参数

 这样会提示错误。

 函数默认参数、函数的占位参数

 c添加了默认参数后错误消失。

 2.如果函数的声明有了默认参数,函数的实现就不能有默认参数。声明和实现只能有一个有用。

 比如这样:

int func3(int a=10, int b=10);

int func3(int a=10, int b=10)
{
	return a + b;
}
int main()
{
	cout << func3(10,30) << endl;
	system("pause");
	return 0;
}

 在代码里面没有提示任何的错误,但在运行之后

函数默认参数、函数的占位参数

参数1和参数2都被重定义了,出现错误。 

int func3(int a=10, int b=10);

int func3(int a, int b)
{
	return a + b;
}
int main()
{
	cout << func3(10,30) << endl;
	system("pause");
	return 0;
}

这样子就没有错误了。

二、函数的占位参数

1.C++中函数的形参列表里可以有占位参数,用来占位,调用的时候必须填补该位置。占位参数也可以有默认参数。

#include<iostream>
using namespace std;

void func3(int a, int)
{
	cout << "hello world!" << endl;
}
int main()
{
	func3(10, 3);
	system("pause");
	return 0;
}

 在这个里面函数里面fun里边第二个参数就为占位符,在调用函数的时候必须补位置。而且是相同类型的。

相关标签: C++