概念:定义或声明函数时为函数的参数指定一个缺省值(默认值)。
使用规则:如果调用时没有实参则用缺省值,有则用指定实参。如下。
void Func(int a = 0)
{cout<<a<<endl;
}
int main()
{Func(); // 没有传参时,使用参数的默认值Func(10); // 传参时,使用指定的实参
return 0;
}
分类:
全缺省参数:每个参数都有缺省值。
半缺省参数:部分有缺省值。*必须从右往左依次给出缺省值。
注意:缺省参数不能在定义与声明中同时出现。最好在声明中给出。
原因:函数在编译阶段进行检查语法、生成汇编语言的工作。如果有多个文件,在编译之前的预处理展开头文件,声明写在“.h”文件里面在编译阶段可以被看见,不会报错。如果写在对应“.c”文件的定义里,编译的时候无法看到,就会报错。定义里的东西在链接的时候才会被编译器读到。