课程
/后端开发
/C++
/C++远征之离港篇
为什么定义函数时需要加&,删掉后结果两个数并没有调换,为什么必须要加&
void fun(int a, int b)
{
int c = 0;
c = a;
a = b;
b = c;
}
2020-03-24
源自:C++远征之离港篇 2-2
正在回答
这牵扯到形参和实参的问题,带了&符号以后代表传进去的还是原来的变量 只是换了个名字而已(如果你理解的话,会知道这两个的变量地址是一样的),不带符号传进去的只是这个变量的值 变量本身并不是同一个 也就是说变量的地址不一样 所以内部进行值得交换并不会影响外部的变量
值传递和指针传递的区别
加& ,传的是 x 的地址,代表的就是x 本身,称为实参
不加&,传的是 x 的值,保存在临时变量里,称为形参。
慕前端2074126
举报
C++扫清通往面向对象的最后一道障碍,将所有知识点融会贯通