记录。根据代码说明。
-
【值传递】是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
-
【引用传递】是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。
关于引用变量赋值问题
- 2个引用变量指向同一个对象,通过一个变量修改对象内部数据,另一个变量看到的是修改之后的数据。(n个中也适用)
- 2个引用变量指向同一个对象,让其中一个变量指向另一个对象,另一个引用变量依然指向前一个对象。(n个中也适用)
代码如下:
obj1和obj2指向的是同一个对象。
刚开始a,b指向同一个对象,对a重新赋值以后,a与b指向的不再是同一个对象。
fn2的定义及调用:
- 先将a中的地址值传递给了obj
- 对obj进行了新的赋值,此时obj指向另一个对象
- 但a没有发生变化
控制台输出如下:
画图演示如下: