我有一个C#方法,其中使用params
关键字声明了可变长度参数列表:
public void VariableLengthParameterFunction (object firstParam,
params object[] secondParam)
调用方法时有没有办法使用命名参数?
答案 0 :(得分:26)
你可以使用这样的命名参数来调用它:
VariableLengthParameterFunction(
secondParam: new object[] { 5, 7, 3, 2 },
firstParam: 4);
答案 1 :(得分:0)
编辑:我假设你想使用命名参数访问params object[] secondParam
数组。
目前,只有方法内的代码知道secondParam
可能包含的内容。从方法签名开始,object[]
和该数组中每个元素的名称/类型之间没有链接。
此外,由于您使用的是params
关键字,因此无法在不提供secondParam[1]
(或secondParam[0]
)值的情况下提供null
。
也许您可以创建一个带有命名参数的重载,并创建object[]
然后调用此方法。或者相反。