当使用按值调用时,实际参数值被压入堆栈。通过引用调用呢?什么被压入调用堆栈?
编辑:
很高兴知道 java 从来不使用引用调用。在 C++ 中怎么样。我将标签从 java 更改为 c++。抱歉造成混淆。
最佳答案
Java 中没有引用调用。一切都是按值调用。
来自 Is Java "pass-by-reference" or "pass-by-value"?
Java is always pass-by-value. The difficult thing can be to understand that Java passes objects as references passed by value.
来自 http://www.javaworld.com/javaworld/javaqa/2000-05/03-qa-0526-pass.html
Java does manipulate objects by reference, and all object variables are references. However, Java doesn't pass method arguments by reference; it passes them by value.
参见 this answer进一步解释。
What about call by reference? What is pushed onto the call stack?
然后引用被压入操作数栈。
关于c++ - 当使用按值调用时,实际参数值被压入堆栈。通过引用调用呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4216771/