C++语法中有这样一种规定:当调用函数时,没有指定参数值,参数就会被赋默认值,但是,此函数必须是在第一次声明或第一次定义的时候,给参数指定了默认值。
在使用时应该注意以下几点:
第一点:参数默认值只允许设定一次,要么在第一次函数声明时设定,要么在没有函数声明的情况下,在函数定义中设定;
第二点:设定参数默认值时,右边的参数必须要设定值,不允许出现右边参数没指定值的情况;
第三点:默认参数调用时,参数赋值的顺序是从左向右,依次赋值,其中不允许出现参数没赋值的情况;
第四点:默认值可以是全局变量、全局常量,甚至是一个函数。但不可以是局部变量。因为默认参数的调用是在编译时确定的,而局部变量位置与默认值在编译时无法确定。