问题标签 [ref-parameters]

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 投票
4 回答
377 浏览

c# - ref 参数和赋值在同一行

我最近遇到了一个讨厌的错误,简化的代码如下所示:

...

Increment 调用后 x 的值为 1!一旦我发现发生了什么,这很容易解决。我将返回值分配给一个临时变量,然后更新 x. 我想知道是什么解释了这个问题。它是规范中的内容还是我忽略的 C# 的某些方面。

0 投票
5 回答
93 浏览

c# - 似乎无法无错误地传递参数

我正在尝试编写一个简单的程序,并且不熟悉通过方法传递参数。到目前为止,这是我在按钮单击方法下的内容,但它返回错误,例如:使用未分配的局部变量(用于 strColor、strMake 和 decPrice)以及“类型或命名空间定义,或预期的文件结尾”但我所有的括号都是正确的。谢谢你的帮助!

0 投票
2 回答
350 浏览

c# - 在函数中传递和更新引用类型参数

考虑我有对象 A,它持有对 B 对象类型的引用,但这次初始化为 null。

我想将 null 替换为 B 类型的对象,该对象持有对 C 类型的引用
(B->C)
所以我会得到A->B->C

为什么不能通过提供 B 对象的引用来链接它们(它持有 null 但可能链接到幕后的特定内存地址并分配给它 C 对象而不是 null 所以之后它将是 A->B- >C?

为什么我必须转发 A 对象才能进行此操作?

这个问题是为了试图理解以下代码中的原因:插入新节点作为特定节点的子节点不起作用。 代码是:

注意:
我不想在这里包含所有代码,所以这个函数是 Tree 类的一部分,它包含 TreeNode 类型的根。
认为您已经拥有带有数据 == 2 (int) 的根树,并且想要像数据 == 1 一样添加新的左子节点。
在我的实现中,节点与其子节点之间的链接不起作用。

0 投票
1 回答
1833 浏览

c# - 为什么 ref 参数不能像 out 参数一样被忽略?

outC# 7 引入内联参数但不引入内联参数是否有特定原因ref

以下在 C# 7 上有效:

但这是无效的:

我看不出为什么不能将相同的逻辑应用于ref参数。