函数开始时会创建一个 参数的副本,加上&是引用,函数创建的就不会是参数的副本,
而是参数地址的副本,那么,参数本身就直接传递到了函数里。
下面两个例子:
例1
void fun(int i)
{
i = 3;
}
int main()
{
int a = 1;
fun(a);
printf("%d",a); // 这里会输出 1;
}
例2
void fun(int& i)
{
i = 3;
}
int main()
{
int a = 1;
fun(a);
printf("%d",a); // 这里会输出 3;
}