所以我刚读完这篇文章,意识到 Java 实际上完全是按值传递的。在其中一个答案中,它指出某些语言是通过引用传递的,但 C 和 Java 不是。由于我主要熟悉 C 和 Java,并且不熟悉列为支持按引用传递的语言的语言,我想我可能从未见过按引用传递。我的问题是,在 C 中将指向对象的指针作为参数传递,然后修改指向对象的指针所指向的内容是否本质上是通过引用实现的。
示例:
如果我有一个指针bar
并且想要“通过引用传递它”以便我可以更改它指向的对象,我可以将一个指针传递给我们可以调用的 bar foo
。foo
将按值传递给函数,但我们可以将值bar
点更改为该函数内。从酒吧的角度来看,这基本上是通过引用传递的吗?还是按引用传递的工作方式不同?