C++中值传递和引用传递的区别
展开全部
你要是学过汇编,知道“地址”这个概念,可能会更容易理解之间的区别。
int b = 123;
fun1(b);
fun1 (int a) {//传值
a = 5; //调用fun1时,把变量的值复制给了a,所以a,b是两个完全不同的变量
//修改b,不影响a
}
int b = 123;
fun2(&b);
fun2 (int *a) {//引用(即传递变量的地址)
*a = 456; //调用fun2时,传递的是变量b的地址,即a和b指向同一个存储区域
//所以,任何一个变量发生变化,都会影响到另外一个。
//*a=456;此时,b的值也变成了456;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询