问题标签 [byref]

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 投票
2 回答
655 浏览

c# - 在 .NET 中,如果您将结构传递给带有接口参数的方法,它是否会将值装箱?

从一个简单的测试中我可以看到,如果你将结构传递给方法,它是按值传递的,但是如果你首先将它分配给一个接口,它是通过引用传递的。

所以我的问题是,仍然有一个拳击操作来传递这样的结构吗?

0 投票
3 回答
30134 浏览

arrays - VBA - 从属性获取返回数组

如果数组是通过引用返回的,为什么以下不起作用:

0 投票
1 回答
24 浏览

php - 数组上推荐的引用问题?

这是我不久前需要澄清的事情。在 PHP 5.3+ 中,我想问这是否可以提高非常大数组结果的性能?你有什么方法可以证明吗?

注意与号(通过引用,而不是通过值)。

0 投票
3 回答
4987 浏览

arrays - 经典 asp:按引用调用函数不适用于数组

我有一个数组,我通过引用传递给一个函数来对其进行排序。但是,似乎数组是按val传递的。任何人都可以解决什么问题?(也接受排序解决方法)


1) 下面的脚本通过引用传递一个数组到排序函数。

2) 排序函数输出排序后的数组值。

3) 脚本输出排序后的数组值。但是,它们没有排序。


脚本输出:

300,200,100,,

100,200,300,


0 投票
3 回答
2431 浏览

c# - 缓存被修改而不是局部变量(通过 ref 传递)

我正在编写一个 .net c# 应用程序。

我从 xml 文件中检索一些数据,将数据缓存到 .net 缓存并从我的方法中返回。我对数据执行一些处理并将其返回到我的应用程序的另一部分。

下一次调用,我从缓存中读取,处理它并返回它等等。

我遇到的问题是对缓存数据执行的处理似乎修改了缓存而不是局部变量,这意味着下次我从缓存中读取时,它是从返回的先前处理中处理的数据。

所以看起来从缓存返回的数据是由ref而不是value返回的。

知道如何防止缓存被修改吗?

0 投票
1 回答
759 浏览

php4 - PHP4参数引用?

我很习惯 PHP5 但必须编写一个 PHP4 同步脚本,现在我正在做一些挖掘以找出 PHP5 和 4 之间的差异。问题是我有很多矛盾,一些网站告诉我 PHP4 没有 byref不管和其他人告诉我这个问题只发生在使用 foreach 时..

澄清一个例子:

我知道你会想为什么不自己运行这个脚本并 echo/print_r 输出呢?好吧,由于某些原因,PHP4 无法在最新的 WAMP/XAMPP 中运行(是的,我尝试了一堆据说兼容的 apache 版本......)

0 投票
2 回答
1534 浏览

vb.net - 在 ByRef 内部方法上指定 OutAttribute 当前是否有任何作用?

VB.NET 没有out参数,但您可以指定<Out()> ByRefCOM 和 P/Invoke 方法以获得与外部方法相同的效果。

在内部方法上指定相同的方法(即仅由 .NET 代码调用的方法)实际上有助于 Jitter(或 VB.NET 编译器)吗?或者它目前仅用作程序员笔记。

是否有可能在将来的 Jitter 中使用,或者在编译时该属性会丢失?

0 投票
1 回答
132 浏览

c# - 静态构件是可移动的还是固定的?

在另一个话题中,一位好人引用 Eric Lippert 的话告诉我:静态的意义与编译器在编译某个类/结构/字段时所拥有的知识和确定性有关。它与内存位置以及它们是否固定等无关。

但我仍然不太确定,因为编译器允许发生如下所示的事情。

与 c++ 引用相比,ref 参数是否完全不同,或者每次 ref 传递一些 args 时都会发生幕后引脚?如果静态成员是可移动的,那么运行时如何保证数组元素的地址在被调用函数执行期间不会改变?我从一个实验中了解到,对象的返回值 Item prop 除了数组之外是不允许通过 Ref 传递的。我认为这是因为数组元素被分配在一块连续的内存中,但是如果整个数组是可移动的,那么如何获取其元素的地址呢?

我有点被这种不确定性困住了。如果有人能给出一些确定的答案,我将非常感激。提前致谢!

~~~~~~~~~~~~~~~~~~

试图理解它:

所以,任何托管操作只要编译器允许它发生,我们不应该出汗,对吧?我有一些 C/C++ 背景,我想我对 C++ 的“静态”的含义非常了解,只有托管代码的可移动性让我怀疑。任何托管对象,无论是在堆栈上还是托管堆上,A ref arg 总能正确指向它,对吧?

0 投票
1 回答
1967 浏览

c# - 如何让 SingleOrDefault 从列表中通过引用返回对象?

考虑这些代码行:

我假设 SingleOrDefault 方法将通过引用返回对象,但事实并非如此。在更改了 ProdGroupItm 的 TOTAL_DOLLAR 金额后,ProdGroupItm2 保持不变,证明它们没有引用列表中的内容。为什么是这样?有没有办法更新列表中对象的值?

0 投票
1 回答
1283 浏览

java - 如何在 jsp:include 文件中通过引用(而不是按值)访问对象?

一个小故事:

我正在处理一个非常大的文件,最终导致以下错误:

为了解决这个问题,我一直在利用jsp:include标签“模块化”文件。jsp:param通过序列化对象并使用标记然后在 jsp:include 文件中反序列化,我已成功地将对象从主文件传递到包含文件。然而,就好像这些对象在主文件和多个包含文件中被使用、修改、重用和重新修改。我想知道是否有办法在渲染包含的文件后将对象传回主文件,或者是否有办法通过引用访问这些对象,以便可以在一个包含的文件和正确的实例中修改它们修改后的对象可以重用它下面的其他包含文件吗?

到目前为止,我已经考虑过pagecontext.setAttribute()(这似乎不是 ref 并且似乎不允许我在修改到主文件后将值传回)和jsp:param(与 几乎相同pagecontext.setAttribute())。

这是我到目前为止所拥有的:

下面的代码示例:(我希望这不会让任何人感到困惑。我不是在寻找语法更正,我只是在寻找一种允许通过引用访问相同对象的解决方案(例如全局变量以及include 标签)或者让我将对象传递回 main.jsp 以便下一个 jsp:include 在修改后可以访问它。

主.jsp


包含文件名1.jsp


包含文件名2.jsp


包含文件名3.jsp

该对象可能会或可能不会被修改,但必须可以从所有三个包含中访问,并且对象的最新更改必须是可访问的。

感谢您的时间。