问题标签 [variadic-functions]
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.
python - **(双星/星号)和*(星号/星号)对参数有什么作用?
在以下方法定义中,*
and**
有什么作用param2
?
python - 在python中传递命名变量参数
假设我有以下方法:
在methodA中,我希望调用methodB,传递kwargs。但是,似乎如果我定义methodA
如下,第二个参数将作为位置参数而不是命名变量参数传递。
如何确保 methodA 中的 **kwargs 作为 **kwargs 传递给 methodB?
c# - 是否可以分解数组,以便可以将其元素传递给带有 params 关键字的方法?
以这个非编译代码为例:
这个例子是我正在使用的测试代码的简化版本。请,我只对与 param 关键字直接相关的解决方案感兴趣。我知道列表和其他类似的东西是如何工作的。
有没有办法“分解” extraFolders 数组,以便它的内容可以与其他参数一起传递到 AppendFolders 中?
c - 传递可变数量的参数
假设我有一个 C 函数,它接受可变数量的参数:我如何调用另一个函数,它期望从它内部获得可变数量的参数,并将所有参数传递给第一个函数?
例子:
c# - C# 使用来自 CPP 的未知数量的 args 调用 CPP 函数
我在 CPP 中有一个具有以下原型的函数:
我使用 DLLImport 属性从 C# 导入它。问题是:如何在 C# 中定义原型(在 DLLImport 属性下)?我如何将参数传递给这个函数?谢谢
c++ - 是否有使用带有参考参数的可变参数的陷阱
我有这段代码(总结)......
并且,在可能的情况下首选通过引用传递的基础上,我因此对其进行了更改。
我的调用代码是这样的:-
但是,s1 包含“Hello World”,而 s2 包含“Hello (null)”。我认为这是由于 va_start 的工作方式,但我不确定发生了什么。
java - 我错过了什么,还是 varargs 破坏了 Arrays.asList?
这个对 Arrays.asList 的调用不应该返回一个Long
s 列表吗?相反,它返回一个List<long[]>
方法签名与结果一致,可变参数将整个数组扔到列表中。它new ArrayList(); list.add(myArray)
与 是的,我知道它应该像这样使用:Arrays.asList(T t1, T t2, T t3)
我想我得到的是,而不是可变参数形式,为什么我不能只使用我的旧 asList 方法(至少我认为这是它过去的工作方式),它将获取内容并将它们单独放入一个列表?还有其他干净的方法吗?
delphi - 带有“可变参数”的函数如何检索堆栈的内容?
通常,在 Delphi 中,人们会使用 'array of const' 方法声明一个具有可变数量参数的函数。但是,为了与用 C 编写的代码兼容,可以将一个未知的“varargs”指令添加到函数声明中(我在阅读 Rudy 出色的“转换的陷阱”文档时了解到这一点)。
例如,可以在 C 语言中有一个函数,声明如下:
在 Delphi 中,这将变为:
我的问题是:在实现使用 'varargs' 指令定义的方法时,如何获取堆栈的内容?
我希望存在一些用于此的工具,例如 va_start()、va_arg() 和 va_end() 函数的 Dephi 翻译,但我在任何地方都找不到。
请帮忙!
PS:请不要在关于“为什么”或“const 数组”替代方案的讨论中飘忽不定——我需要这个来为 Xbox 游戏中的函数编写类似 C 的补丁(参见 sourceforge 上的 Delphi Xbox 模拟器项目“Dxbx”详情)。
java - 差异 fn(String... args) 与 fn(String[] args)
这个语法有什么用:
这和写作一样吗
仅在调用此方法时有所不同,或者是否涉及其他任何功能?