.NET中的CIL,CLS和CTS

Dom*_*nic 7 .net types cil cls-compliant

.NET中的CIL,CTSCLS是什么?它们之间有什么区别?

ito*_*son 13

CIL(通用中间语言)是编译C#或Visual Basic代码的字节代码.它是.NET执行引擎的"机器代码".

CTS(通用类型系统)是编译级别的类型(类和结构)的表示.基本上,它说所有.NET语言都将使用表示类型(类和结构)的常用方法.

CLS(公共语言规范)是一组API约束和一组补充的语言要求.如果库符合CLS(即遵守所有约束),那么任何符合CLS的语言都将能够使用该API.相反,保证符合CLS的语言能够使用任何符合CLS的库.例如,保证符合CLS的语言支持Int32,因此CLS保证库编写者在其API中使用Int32是安全的.