一.默认参数
例子1:
#include <iostream>
using namespace std;
//默认参数
int func1(int a = 10) {
return a;
}
int main(int arg, char** args) {
cout << "默认参数:a=" << func1() << endl;
cout << "传递参数:a=" << func1(5) << endl;
}
例子2:
多个默认参数,一定是从右向左。
#include <iostream>
using namespace std;
//默认参数
int get_volume(int width,int hight, int len = 10) {//默认参数要从右边写起
//例:get_volume(int len = 10,int width,int hight)会报错
cout << "长len = " << len << endl;
cout << "宽width = " << width << endl;
cout << "高hight= " << hight << endl;
return len * width * hight;
}
int main(int arg, char** args) {
int width = 10, hight = 10;
cout << "体积=" << get_volume(width,hight) << endl;
}
二.占位参数(缺省参数)
无实际意义,只是作为标志使用。
例如:区分操作符重载a++和++a,用于区分先加,还是后加。
//占位参数
void func2(int a,int) {
cout << a << endl;
}
void main(int arg, char** args) {
int a = 1;
func2(a);//此处会报错
func2(a, 1);//正确写法
}