在“.Net Reflection”的背景下,“Emit”是什么意思?

时间:2013-09-12 09:11:48

标签: c# reflection

Emit在.Net中的含义是什么,与“生成代码”的含义相同?

例如,如果我正在设计一个带有函数的类,该函数返回了它生成的一些代码,那么在语义上哪个名称更正确MyClass.EmitCode()MyClass.GenerateCode()

我需要在.Net中了解什么?

1 个答案:

答案 0 :(得分:5)

在英语语言层面,“emit”一词基本上是“发出”,“产生” - 所以在这个意义上使用“生成”作为同义词是合理的。然而,在“emit”的一般用法与非常具体的用法之间可能存在一些混淆,即System.Reflection.Emit - 后者指的是 IL生成,而不是代码生成。

在您的情况下,由于您包含“代码”一词,即EmitCode(),因此我不确定这种歧义是否存在。因此,我不确定是否有强烈的理由支持或反对在这里使用“发射”一词。坦率地说,只要你记录方法的作用,我就不确定它是否重要; p