问题标签 [byval]

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 投票
1 回答
50 浏览

vb.net - 跨子程序传输字符串值

我有变量 Month1 和 Month2,我需要以某种方式从 cb_CheckedChanged 转移到 frmMain_Load。如果没有任何方法可以传输字符串值,我可以更改一些代码以使其成为可能吗?

0 投票
1 回答
914 浏览

vb.net - ByVal sender as object.... 和 Sender as object 之间的区别

我对编码完全陌生,并且一直在尝试做很多家庭研究。我目前正在使用 VB 2012,并注意到在很多论坛上 (ByVal Sender as Object,...,当我加载按钮或表单时,我的代码会自动显示为(Sender as object.... 我的问题是两者之间有什么区别以及它们如何分别影响程序?我:

随机的:

0 投票
1 回答
101 浏览

c++ - C++ 编程(by ref & by val 的优点)查询?/ byRef以外的结构体编辑方法

我正在为我的考试复习一次模拟考试,纸上的一个问题让我感到困惑。

Q.)应用程序需要将结构传递给函数,该函数将修改结构的内容,以便在从函数调用返回时,调用者可以使用新的结构值。你会通过值、地址或引用将结构传递给函数吗?

清楚地说明您选择特定方法的原因。通过比较这三种方法来证明您的选择。

现在我很难理解这一点,因为我认为问题的最佳答案总是由 Ref 提供,因为它获取值的引用指针并编辑其内容,而不仅仅是获取副本。如果使用基于类的程序,情况会有所不同。

我能理解的唯一另一种方法是拥有一个单独的值并获取和设置这些值,但这意味着额外的代码行,我有点不确定这意味着什么,谁能帮助启发我?我不知道有任何其他方法可以实现这一点。

0 投票
2 回答
153 浏览

c# - 参数真的是按值传递吗?

我正在读约翰斯基特的书"C# in Depth"。他在第 74 页上说,每个人都假设通过引用传递给函数的参数,同时它是通过值传递的,并且作为示例,他展示了这段代码,该代码必须证明调用代码中的 StringBuilder 没有改变。与此同时,我们的函数 StringBuilder 实例内部发生了变化。

但是我的实验表明 StringBuilder 对象发生了变化——我们将在控制台中看到“Hello”。这里有什么问题?或者我对这个例子的理解有什么问题?

0 投票
1 回答
289 浏览

c# - 带有 ByRef 的 COM 互操作方法签名

我有一个调用 COM DLL 的 C# 程序,该程序有一个test使用两个参数调用的方法:第一个参数被传递ByVal,第二个参数被传递ByRef

这就是 COM DLL 的作用:

这就是 C# 程序的作用:

我注意到如果我删除ref关键字,编译器不会告诉我我错过了ref关键字并传递了参数ByVal。如果我错过了关键字,这可能是一个大问题,ref因为在我知道它需要ref. 你知道为什么编译器会出现这种行为吗?

0 投票
1 回答
709 浏览

vba - 根据工作表更改运行宏(单元格包含公式)

我认为我有一个相当合理/标准的要求,到目前为止我尝试过的方法被证明是不成功的。

我正在运行 Excel 2013 32 位,在单元格 J7 的第 6 页中,我有一个经常更改的第三方公式。基本上,每次单元格值发生变化时,我都想调用一个宏。

请记住,此单元格是一个公式(我已经尝试将这个第三方公式更改为一个简单的公式,例如 A1+B1 并且它没有改变行为)。

基本上 Excel 不会调用我的宏并识别此单元格中的更改,除非我手动输入公式或在 Excel 单元格中按 F2 并按 Enter,或者如果我单击公式框并按 Enter(所有步骤都需要用户单击) .

这是我尝试过的方法(都是工作表更改或工作表计算的变体)。如果我遗漏了一些明显的东西或者我没有尝试过的方法,请告知,谢谢。

https://www.extendoffice.com/documents/excel/4423-excel-run-macro-on-cell-change.html

http://www.dbforums.com/showthread.php?1661517-Execute-Macros-From-Formulas-(Or-Cell-Value)

每次单元格获取值被公式更改时,如何运行 VBA 代码?

https://www.linkedin.com/pulse/20140623100408-​​92734594-how-to-execute-excel-vba-macro-on-change-of-specific-cell-in-excel-sheet

https://www.excelforum.com/excel-programming-vba-macros/400984-change-in-cell-from-formula-to-auto-run-a-macro.html

http://www.ozgrid.com/forum/showthread.php?t=144429

当单元格值按公式更改时运行 VBA 脚本

当单元格被公式更改时,VBA 代码不运行

当任何包含公式的单元格发生变化时触发宏

在单元格更改时自动执行 Excel 宏

0 投票
0 回答
858 浏览

vba - UIAutomationClient elementFromPoint 与 VBA 错误“用户定义的类型可能无法通过 ByVal”

有没有办法将UIAutomationClient中的 ElementfromPoint与 VBA(EXCEL)一起使用

我总是出现编译错误: “用户定义的类型可能无法通过 ByVal”

好吧,如果我不能使用 vba 中的 elementfromPoint,我可以使用 Iaccessible 中的 AccessibleObjectFromPoint 来开始我的查询,但是使用它我无法从 ElementFromIAccessible 中获取所有信息(.currentHelpText)

代码 1

代码 2

0 投票
1 回答
806 浏览

c++ - C++ 模板 ByRef 与 ByVal

我正在学习 C++ 的在线课程 (Pluralsight.com) 并努力练习模板,特别是将实际数字(例如3)传递给期望(T& t).

讲师编写的代码不会在我的 PC 上编译 - 我相信我理解它为什么无法编译,但想知道它是如何为讲师编译的(谁演示了它)以及您应该如何处理这种情况。

编辑:修正了代码中的错字(来自我在提问之前的实验)。它似乎在https://ideone.com/1cjJUD中运行,所以我现在不确定为什么它不会为我编译!(感谢@user4581301)

EDIT2回答后,更改函数名称以避免混淆。应该让任何偶然发现同一件事的人更清楚地提出问题。https://ideone.com/dZffn6

编译器错误"C2664 'T max<int>(T &,T &)': cannot convert argument 1 from 'int' to 'int &" 在我看来它失败了,因为3实际数字不是对存储在某处的数字的引用。声明int a=3;并传递a给我的 max 函数可以正常工作。

  1. 我对编译失败的原因是否正确?
  2. 讲师代码如何编译不出错?这在最近的 C++ 版本中是否发生了变化(我相信该类使用 C++03)?
  3. 是否可以编写一个可以通过 ByRef 或 ByVal 的模板?我最终会得到 4 个案例(a,b)吗?(a&, b); (a, b&); (a&, b&) ?
0 投票
2 回答
394 浏览

c# - VB.NET 和调用 byval/byref C# 重载

我们有一个 C# 类,其中包括两个函数,其参数仅通过参数修饰符不同:

现在我们需要从 VB.NET 调用这个方法(实际上是其中任何一个)。问题是 VB.NET 编译器无法决定使用哪种方法。

问题是:有没有办法告诉编译器我们想要第一个变体(或第二个变体,这对调用者无关紧要)?

在 VB.NET中将调用编写为DoSomething((myObj))(即添加括号)没有帮助。

0 投票
1 回答
58 浏览

excel - 更改 vba 已更改值 VBA 的单元格颜色

我是 VBA 的新手,所以如果我听起来很愚蠢,请多多包涵-

背景信息:我正在尝试自动化我们每季度更新的工作簿 - 我想通过更改这些单元格的背景颜色来显示我的 VBA 脚本更改了哪些单元格,以便我可以在开发脚本时跟踪它们。它也适用于对 VBA 的了解为零的同事,他将查看数据并继续手动更新文件。

现在我注意到有一个可以使用的事件过程:

据我了解,即使更改是由 VBA 完成的,它也可以标记单元格,但我不知道如何用我的 VBA 脚本来实现它。我是否以某种方式将其插入到我的一般程序中,还是必须将其嵌入到更新的目标文件中?

请注意,VBA 没有写入目标文件。由于客户端请求,该文件不能为 xlsm 格式。

提前致谢!!