【发布时间】:2010-12-15 22:21:53
【问题描述】:
我想为我在运行时构建的对象创建一个构造函数,该构造函数调用一个方法,该方法接受传递给 ctor 的所有参数的对象数组。看看如何构建这样的方法,我似乎必须做类似的事情::
method pulbic hidebysig specialname rtspecialname instance void .ctor(SomeObject arg) cil managed
{
ldarg.0
call void MyNameSpace.BaseClass::.ctor();
ldc.i4.1
newarr System.Object
stloc.0
ldloc.0
ldc.i4.0
ldarg.1
stelem.ref
ldloc.0
call void SomeClass.Method(object[])
ret
}
相当简单,但是如何在 ctor 构建器上定义 object[] 类型的局部变量?似乎没有定义变量的方法,还是我只是发出 stloc.0/ldloc.0 而不关心先定义它?
【问题讨论】:
标签: c# reflection.emit