【发布时间】:2014-03-09 10:10:57
【问题描述】:
我有以下方法:
void MyMethod(params object[] args)
{
}
我试图用object[] 类型的参数调用它:
object[] myArgs = GetArgs();
MyMethod(myArgs);
它编译得很好,但在 MyMethod I args == { myArgs} 内部,即一个数组,其中一个元素是我的原始参数。明明我想要args = myArgs,我做错了什么?
编辑:
Jon Skeet 实际上是对的,GetArgs() 确实将这个东西包装在一个元素数组中,抱歉这个愚蠢的问题。
【问题讨论】:
-
"但在 MyMethod 内部我 args == { myArgs}" 这是什么意思?为什么不显示该代码?
-
@TimSchmelter,这意味着:即一个数组,其中一个元素是我的原始参数。
-
问题
object[]也是object:) -
@Grzenio:我的问题仍未得到解答,你为什么不在方法中显示代码?
-
@Hans:不,这根本不完全正常。这不是会发生什么。不需要时编译器不会创建数组。