
我没有得到的是如果C#编译器没有要检查的.cs文件,它如何处理泛型.我怀疑它会检查CIL,因为这将是一个处理器密集型 *** 作.我知道它能够从元数据中提取类型信息,但是如果通用函数的代码也被编码,那么对于可执行文件来说这将是一个巨大的膨胀.
那么,再次,编译器如何使用泛型?
解决方法 我想你问的是C#编译器如何使用引用程序集中定义的泛型类型,而不是询问C#编译器如何编译定义泛型类型的.cs文件(因为你说“如果它没有.cs文件“).通用类型和成员在IL中编码为通用.封闭的泛型类型和成员由jit编译器在运行时构造.所以对你的问题的简单回答是“C#编译器通过发出IL来处理泛型类型,导致jit编译器在运行时构造它们.”
总结以上是内存溢出为你收集整理的C#编译器如何与泛型一起使用?全部内容,希望文章能够帮你解决C#编译器如何与泛型一起使用?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)