引用传递和值传递

C++中函数参数有三种方式传递:

1.值传递:传递的是参数的副本,函数内部对参数的操作不会影响原始变量。

2.指针传递:传递的是参数的地址,函数可以通过指针修改原始变量的值。

3.引用传递:传递的是参数的引用,函数操作的是原始变量本身。

值传递:函数得到的是实际参数的一个拷贝,修改这个拷贝不会影响原始的变量

引用传递:在引用传递的情况下,函数得到的是实际参数的引用,这意味着函数内部对参数的操作会直接作用于原始变量

为什么引用传递会改变传入的值?

引用是变量的别名:在引用传递中,函数内的参数实际上是调用者传入的变量的别名,他们共享同一块内存空间。因此,修改引用就等同于修改原始变量

共享同一内存地址:引用和原始变量共享同一个内存地址,所以函数内的任何操作都会反应在调用者的变量上。

你可能感兴趣的:(开发语言)