https://stackoverflow.com/a/6044657/1165790
我的印象是有两种方式可以分配/调用东西: 1)按值(通过引用将类型的实际位编码分配/发送到变量/函数和2)(数据位置的存储器地址被分配/发送到变量/函数。
究竟是什么传递'按值引用'?
答案 0 :(得分:2)
这意味着您传递引用(本质上是指针抽象)的方式与传递任何其他原语的方式相同:按值。
Passed by Value Passed by reference
--------------- -------------------
Integer Object
Reference Object that the reference points to
因为引用是按值传递的,所以您将获得与使用相同的行为 通过价值传递的任何其他东西;即,您传递引用的函数使用引用的副本而不是实际引用。
因此,如果更改函数内的引用,则函数外部的原始引用不会更改。
答案 1 :(得分:1)
这是文字游戏。引用是内存地址,或者严格来说,是一个具有内存地址所有属性的抽象。所以按值传递引用就是你所说的:地址的位被传递给被调用者。在大多数计算机语言文本使用的更一般的说法中,这与通过引用传递对象完全相同。