首页 > 代码库 > C++参数传递
C++参数传递
值传递函数内部生成相应地址放置传入的值,相当于函数内部创建临时变量(隐形),所以不改变传入参数本来的值,
引用和指针传递都是对所在地址上的值更改,会改变传入得值
1 #include<iostream> 2 using namespace std; 3 //值传递 4 void sum(int a,int b) 5 { 6 a += 1; 7 b += 1; 8 } 9 //引用传递10 void sum2(int &a,int &b)11 {12 a += 1;13 b += 1;14 }15 //指针传递16 void sum3(int *a,int *b)17 {18 *a += 1;19 *b += 1;20 }21 //默认参数22 void sum4(int a = 4, int b = 5)23 {24 cout<<"a+b= "<<a+b<<endl;25 }26 int main()27 {28 int a = 1, b = 3;29 cout<<"before sum: a= "<<a<<"\tb= "<<b<<endl;30 //值传递31 sum(a,b);32 cout<<"after sum: a= "<<a<<"\tb= "<<b<<endl;33 a = 1, b = 3;34 cout<<"before sum2: a= "<<a<<"\tb= "<<b<<endl;35 //引用传递36 sum2(a,b);37 cout<<"after sum2: a= "<<a<<"\tb= "<<b<<endl;38 //指针传递39 a = 1, b = 3;40 sum3(&a,&b);41 cout<<"after sum3: a= "<<a<<"\tb= "<<b<<endl;42 //默认参数43 sum4();44 cin.get();45 return 0;46 }
结果:
C++参数传递
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。