问题标签 [pass-by-reference-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.

0 投票
5 回答
328 浏览

java - Java 按值传递

可能重复:
Java、按值传递、引用变量

考虑以下简单的 java 程序

由于java使用按值传递,x的值不会在主中改变..为了克服这个问题,我们在c中有通过引用传递的概念..但是我在java中没有找到任何这样的概念..我怎么能真的改变 x.. 的值?如果没有办法改变 x 那么这不是 java 的缺点吗?

0 投票
3 回答
40 浏览

java - Java pass by value query

Since java is pass by value.In below code we are passing a value to appendStringMethod not a reference, then why in main method we get HelloWorld not just Hello after calling appendStringMethod() in main.

However in below code, values are not swapped.

0 投票
1 回答
316 浏览

php - 如何重新编码 PHP 引用分配用法

我的弃用检查器抛出此错误:

Using deprecated language feature assign by reference(&=) Since PHP 5.3 use normal assignment instead.

因此,我试图弄清楚如何重新编码此类中的方法以不使用by reference或至少正确使用它(如果完全允许的话-我也不清楚)。

下面是使用by reference. 整个课程都在这里测试和弃用检查器日志在这里

我想要一些帮助重新编码类以删除使用by reference

0 投票
2 回答
3078 浏览

lua - Lua:高效复制表(深拷贝)

我尝试有效地制作 lua 表的副本。我编写了以下运行良好的函数 copyTable()(见下文)。但我想我可以使用函数的“按值传递”机制获得更高效的东西。我做了一些测试来探索这种机制:

我们可以看到,对表的引用通过函数(当我只是阅读它或添加东西时)没有改变,除了在 noop() 中我尝试对现有的进行彻底修改。

我在这个 Q/A中阅读了Bas Bossink和Michael Anderson的回答。关于传递或表作为参数,他们强调了“通过 ref 传递的参数”和“通过值和表传递的参数是引用”之间的区别,并举例说明了这种区别。

但这究竟意味着什么?我们是否有引用的副本,但是由于指向并因此被操作的数据仍然是相同的,而不是复制的,这与传递 ref 有什么区别?当我们尝试将 nil 影响到 table 时,noop() 中的机制是否特定于避免删除 table 或在哪些情况下触发(我们可以通过 nooop() 看到,当表已修改)?

我的问题:传递表格的机制如何真正起作用?有没有一种方法可以更有效地复制表的数据而无需我的 copyTable 负担?

0 投票
1 回答
1039 浏览

shell - 在 GoCD 中使用变量值作为环境参数

我正在尝试编写一个 shell 脚本,它从文件中读取变量并将其替换为 GoCD 中定义的环境变量。

现在我面临的挑战是我正在尝试使用变量的值作为参数

下面是我的脚本

同样在 GoCD 环境变量中,我给出了 Env_var = 1234

现在这里的脚本给出输出 $Env_var

我希望 $Env_var 值(即 1234 在 GoCD 中定义为环境变量)应该是输出

请帮忙!

0 投票
2 回答
50 浏览

java - Java 通过引用/值传递

我已经阅读并(相信我已经)理解了之前在这个论坛上发布的帖子。

但是,作为 Java 新手,我遇到了问题

我创建了一个 MAP 凭证详细信息并将其传递给一个正在填充它的函数(通过跟踪验证)。返回时 iy 为空。为什么?

尽管在函数内部填充了凭证,但返回时仍然是空的。好像对象不是作为指向它的指针传递的。

我做错了什么以及如何正确做

TIA

以法莲

0 投票
1 回答
978 浏览

swift - 停止参考变量改变原始变量的值

我将自定义类的值分配给另一个变量。更新新变量的值会影响原始变量的值。但是,我需要阻止引用变量更新原始变量。

这是正在发生的事情的基本表示:

我尝试将 referenceVariable 包装在一个结构中以使其成为值类型,但它并没有解决问题。

我找到了有关值和引用类型的信息,但我无法找到解决方案。

简而言之,我的问题是:如何停止对引用变量的更新,使其不再更新为其分配值的原始变量?

提前致谢。

0 投票
0 回答
52 浏览

c++ - 如何通过引用传递让更高级别的函数检查较低函数中的变量?

我们还没有真正介绍过指针,但一直在学习按引用传递(&稍后将介绍指针)。在一个练习中,我们被要求编写一个小问题游戏,该游戏将在一个简单的类main程序中在其函数之间传递值以完成任务。

如果我们有一个main调用 2 个函数的层次结构: functionaskNum和 function giveStats,其中askNum包含许多函数(一个在较低级别的函数是checkIfRight)。我需要打电话给giveStats它,它基本上会告诉用户他们对一组问题的猜测程度。

我忽略了细节,因为我想专注于我们不能使用值返回函数或全局变量的事实。所以我必须想出一种方法来计算正确的猜测数量checkIfRight并将该信息发送回函数的层次结构giveStats

我不知道怎么称呼它。我已经为这个游戏找出了大部分代码,并在同一层次结构中的函数上实现了简单的通过引用传递,我对让外部函数基本上调用它感到困惑。那么 main 中是否会有一个变量被调用numCorrect并在修改giveStats后调用askNum它?

0 投票
1 回答
47 浏览

java - Java passByValue 或引用混淆

我试图使用 Java 引用,但遇到了一个有趣的情况。下面这段代码给了我不可预测的输出。我正在尝试修改函数中的数组、字符串和整数。

现在这给出了以下输出:

我不明白为什么数组会改变,但字符串和整数在函数内部没有改变。

0 投票
2 回答
819 浏览

c++ - 常量引用和引用之间的区别

这两个功能有什么区别?什么时候调用这个函数?