【发布时间】:2014-02-09 17:27:59
【问题描述】:
当我查看 OpCodes 类的源代码时,我发现了一些奇怪的东西。
OpCodes 类包含一些OpCode struct 类型的静态只读字段。例如:
public static readonly OpCode Nop = new OpCode(OpCodeValues.Nop, 6556325);
这会创建一个新的OpCode 并传递两个参数。但是当我查看 OpCode 结构时,我找不到任何带有两个参数的构造函数。相反,只有一个 internal 构造函数,它看起来像这样:
internal OpCode(String stringname,
StackBehaviour pop,
StackBehaviour push,
OperandType operand,
OpCodeType type,
int size, byte s1, byte s2,
FlowControl ctrl,
bool endsjmpblk, int stack)
据我所知,这里没有可选参数。
那么构造函数在哪里?某处有无形的构造函数吗?
注意:我使用的是.NET Reflector
【问题讨论】:
标签: c# reflection opcode