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

Mis*_*hax 4 c# reflection

是什么Emit在.net中的意思是,它一样的"生成代码"的含义?

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

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

Mar*_*ell 5

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

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