在方法foo()
中,为什么使用int i
和int I = 0
来定义变量i
时结果为何不同?
在第二行中,当其为int i;
时,结果为42,但当其为int I = 0;
时,结果为0。
1 int& foo() {
2 int i = 0;
3 return i;
4 }
5 void main(){
6 int& foo();
7 foo() = 42;
8 std::cout << "foo() value:" << foo() <<std::endl;
9 }