问题标签 [callbyname]

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 投票
3 回答
1156 浏览

c - 使用动态范围按名称调用

我在静态/动态范围内遇到以下问题:

下面的程序片段是用允许全局变量但不允许函数嵌套声明的编程语言编写的。

Q1。如果编程语言使用静态作用域和按需参数传递机制调用,上述程序打印的值是

(A) 115, 220 (B) 25, 220 (C) 25, 15 (D) 115, 105

Q2。如果编程语言使用动态作用域和按名称调用参数传递机制,则上述程序打印的值是

(A) 115, 220 (B) 25, 220 (C) 25, 15 (D) 115, 105

我的想法:

在 Q1:因为它是静态范围,并且根据需要调用,x 应该替换为 i + j。但这会导致本地名称冲突,因为已经有一个名为 i 的变量。所以它(全局 i)可能会被重命名,让我们说 i1,然后调用将是:

关于 Q2:在动态作用域中,您首先在本地函数中搜索变量,然后在调用本地函数的函数中搜索,然后在调用该函数的函数中搜索,依此类推,直到调用堆栈。

根据名称调用:

第二个电话将是

这个答案正确吗?(选项中不存在)我缺少什么吗?(可能是动态绑定?)

0 投票
2 回答
1179 浏览

vb.net - 使用 CallByName 访问子类或子属性

我可以使用CallByName访问类的子值(换句话说,我可以Class.SubValue使用它)。
但是当我想Class.SUBCLASS.SubValue使用 CallByName 时出现错误。
是否可以使用 CallByName (或使用 smtg else)来做到这一点?

这是一个典型的代码:

- 编辑:这是实际的问题。--

我想将文件中的参数加载到表单的控件中,并且在文件中的参数是这样写的:
<ControlName>.<Property>=<Value> | TextBox1.Text=SomeText | Button2.Left=1234
当我使用时出现错误:
CallByName(MyForm, "<ControlName>.<Property>", CallType.Set, "<Value>")

如何解决我的问题(使用 CallByName 或 smtg else)?

0 投票
1 回答
428 浏览

scala - 带有惰性“按名称”参数的参数列表(“*”)?

我可以:

我可以:

但我不能:

也不

还有其他方法可以做我想做的事吗?为什么不允许这样做?

0 投票
2 回答
1683 浏览

scala - 使用惰性 val 的按名称调用和按值调用

我想知道按值传递但懒惰的变量与在Scala中按名称传递变量之间的区别。

我写了这个例子来尝试显示但我没有,我该怎么做?

0 投票
0 回答
60 浏览

language-agnostic - 按名称调用评估和 foreach 循环

我第一次遇到这个问题,我无法弄清楚。

假设我们有一个数组和一个 foreach 循环。像这样的东西:

我错了还是这里行不通?我的意思是,每次我将通过 foreach 循环时,我都会评估 y(按名称),因此,作为 v[i++],我会将我的 i 变量的值增加一。

  1. 所以第一步 y = v[0] 所以 write(10) 然后 i++ (i=1)。
  2. 第二步 y = v[1] 所以 write(20) 然后我将 i 加一(i=2)。
  3. 第三步也是最后一步 y = v[2] 所以再次写(50)和 i++,现在等于 3。

现在,它应该返回什么值?!如果我再次评估 y,我不能做 y = v[3] 因为我超出了界限。我做错什么了吗?我应该在 foreach 循环之前只评估一次 y 吗?在按名称调用参数时,我没有考虑到 foreach 一定有什么东西。

不知道,我有点困惑。

提前致谢!

0 投票
1 回答
1992 浏览

scala - 如何使用 ScalaMock 模拟名称调用参数(如 getOrElse)?

我希望能够模拟getOrElse方法的返回值,以便它返回作为orElseScalaMock 的名称调用参数传递的内容

由于柯里化,必须使用 ScalaMock。运行这个:

抛出异常:

0 投票
2 回答
222 浏览

vb.net - 使用 callbyname 检查 list.contains(x)

我一直在尝试使用 callbyname 编写一个通用函数,该函数在将目标列表(targetListName)添加到列表之前检查它是否包含某个项目。不幸的是,我似乎无法弄清楚如何将 .contains 与 callbyname 一起使用。感谢任何帮助!

这是我现在使用的代码。供应和需求都是列表(字符串)。

我想理想地使用这样的东西:

0 投票
1 回答
186 浏览

excel - 为什么只能在类模块上使用按名称调用?

我在 VBA for Excel 中遇到过,您只能在类模块内的方法上使用 CallByName,因为此链接表明:http: //support.microsoft.com/kb/186143

我的问题是为什么会这样?我不明白为什么不能在课程之外使用相同的功能。

我不确定这是否是一个特定的 VBA 问题,或者是否同样适用于其他编程语言。

0 投票
2 回答
133 浏览

scala - 在 Scala 中,什么时候是使用惰性求值参数而不是使用函数作为参数的好时机?

得到这个结果:

似乎lazyHello 和anoyHello 执行相同。

那么,在 Scala 中,什么时候是使用惰性求值参数而不是使用函数作为参数的好时机呢?

0 投票
1 回答
2727 浏览

programming-languages - 按名称/引用/值调用

有人可以通过名称、参考和价值来深入解释调用,并将它们相互比较吗?

简单的例子也很棒。我非常专注于按名称调用,感觉与按引用调用非常相似。