函数1:void swap(int a, int b)
{
int c;
c = a;
a = b;
b = c;
}
这种方式为值传递,函数内拷贝值,并不能进行交换!!!!!!
函数2:void swap(int *a,int *b)
{
int c;
c = *a;
*a = *b;
*b = c;
}
指针传递,调用的时候需要把参数的地址传进去:
int x =10,y = 20; swap(&x,&y);
函数3:
void swap(int &a,int &b) // 形参就是引用别名
{
int c = 0;
c = a;
a = b;
b = c;
}
由于形参就是引用别名,所以直接传参,不需要取地址!!!!!!!
int x =10,y = 20;
swap(x,y);
本文详细解析了C++中函数参数传递的两种方式:值传递和引用传递。值传递会创建变量副本,无法实现原始变量的交换;而引用传递则允许直接操作原始变量,实现真正的交换。通过示例函数和调用方式,阐述了两种传递方式的差异和使用场景。
428

被折叠的 条评论
为什么被折叠?



