[C++基础]005_函数参数
函数参数的传递学问也不小,不过呢,核心就是两个概念:值传递和引用传递,也很简单。
值传递:传递参数的复制体,函数体内对参数进行修改,原参数值不会发生变化。
引用传递:传递函数的地址,函数体内修改参数会引起原参数值的变化。
值传递
1 using namespace std; 2 3 int function(int a, int b){ 4 cout<<"a + b = "<<(a+b)<<endl; 5 return 0 ; 6 } 7 8 int main(){ 9 int a = 1; 10 int b = 2; 11 function(a, b); 12 system("pause"); 13 return 0; 14 }
输出:
a+b = 3
请按任意键继续. . .
引用传递
1 #include <iostream> 2 using namespace std; 3 4 int function(int& a, int& b){ 5 cout<<"a + b = "<<(a+b)<<endl; 6 a = 10; 7 b = 20; 8 return 0 ; 9 } 10 11 int main(){ 12 int a = 1; 13 int b = 2; 14 function(a, b); 15 cout<<"a = "<<a<<endl; 16 cout<<"b = "<<b<<endl; 17 system("pause"); 18 return 0; 19 }
输出:
a + b = 3 a = 10 b = 20 请按任意键继续. . .
注意,a和b的值发生变化了!