请问这里func函数为什么小括号里装的是int &类型的
为什么不是普通的int函数
我尝试了一下换成int类型发现改变不了原值,虽然int类型确实无法达到效果
但我还是想问一下这是什么原理
请各位帮我解答一下
int型的话只是将值进行传递,函数会重新定义一个内部变量,然后赋值传入参数的值。实际是两个int变量,因此你修改内部变量的话,外部变量是不会发生变化的
而使用int &,是引用类型,实际传递的是一个别名。就像你有一堆小名一样,实际指向的都是同一个人,那么修改这个别名的内容,实际就是修改这个人的内容,所以用引用的话,函数内部改变值就可以改变外部传入变量的值