[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的值发生变化了!

 

posted @ 2012-10-08 23:13  邵贤军  阅读(506)  评论(1编辑  收藏  举报