int i=9; int n=10; int fooBar(int=i,int=n); int someBar=fooBar(); //调用fooBar(9,10)
用作默认实参的名字( i, n)在函数声明所在的作用域内(如上int i=9,int n=10)解析。局部变量不能作为默认实参(如下 int n=12)。
void someFunction(){
i=11;//改变默认实参的值(9变11)
int n=12;//隐藏了外层定义的n,但这是局部变量,不能作为默认实参,因此没有改变默认实参的值。
someBar=fooBar();//调用fooBar(11,10)
}



