问题标签 [pass-by-value]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP 变量是按值传递还是按引用传递?
PHP 变量是按值传递还是按引用传递?
c++ - 在 C++ 中通过值传递还是通过常量引用传递更好?
在 C++ 中通过值传递还是通过常量引用传递更好?
我想知道哪个是更好的做法。我意识到通过常量引用传递应该在程序中提供更好的性能,因为您没有制作变量的副本。
c++ - C++ - 传递对 std::shared_ptr 或 boost::shared_ptr 的引用
如果我有一个需要使用 a 的函数,shared_ptr
将它的引用传递给它会不会更有效(以避免复制shared_ptr
对象)?可能的不良副作用是什么?我设想了两种可能的情况:
1) 在函数内部,由参数制作副本,如
2)在函数内部只使用参数,如
在这两种情况下,我都看不到传递boost::shared_ptr<foo>
值而不是引用的充分理由。按值传递只会“暂时”增加由于复制而导致的引用计数,然后在退出函数范围时减少它。我忽略了什么吗?
只是为了澄清一下,在阅读了几个答案之后:我完全同意过早优化问题,并且我总是尝试首先分析热点然后工作。如果您知道我的意思,我的问题更多是从纯技术代码的角度来看的。
language-agnostic - 按引用传递与按值传递有什么区别?
和有什么区别
- 通过引用传递的参数
- 按值传递的参数?
请给我一些例子好吗?
.net - VB.NET 中的引用
对我来说有些不清楚的是对 VB.NET 中的类的引用(指针?)。我要问的问题可以通过一些测试来回答,但我想知道是否有人可以发布一个体面的解释(或链接,也是)。
如果你创建一个类:
然后是一个实际使用这个类作为属性的类:
然后像这样使用它:
现在函数BooleanCheck
将始终返回true
,即使引用是UsingClass
“按值”而不是按引用传递给新类的。因此,没有制作类的副本,但myReference
in 中的局部变量UsingClass
仍然引用/指向Reference
.RuntimeOrSomething
这怎么能优雅地解释呢?
c - 对通过指针访问结构成员感到困惑
我是 C 新手,对通过指针引用结构成员时得到的结果感到困惑。有关示例,请参见以下代码。当我第一次引用 tst->number 时发生了什么?我在这里缺少什么基本的东西?
输出是:
c++ - 在 C++ 中通过引用/值传递
我想澄清按值和按引用之间的区别。
我画了一幅画
因此,对于按值传递,
使用不同的引用创建相同对象的副本,并为局部变量分配新引用,因此指向新副本
如何理解这句话:“如果函数修改了该值,则修改也出现在调用函数的范围内,无论是通过值传递还是通过引用传递”
谢谢!
java - Java,按值传递,引用变量
在以下示例中,我无法理解 Java 的“按值传递”操作:
我知道因为 s_ccc 是一个参考变量,所以当我将它提供给方法 calculate() 并在方法中对其元素进行一些更改时,即使在我离开该方法后更改仍然存在。我认为 t_ccc 也应该如此。它又是一个参考变量,我将它提供给方法calculate(),并在该方法中将t_ccc 的引用更改为s_ccc 的引用。现在 t_ccc 应该是指向一个数组的引用变量,该数组有一个 int 类型的元素等于 16。但是当方法 calculate() 离开时,似乎 t_ccc 指向它的旧对象。为什么会这样?改变不应该也保留吗?毕竟它是一个参考变量。
问候