什么是CTS、CLS、CLR

什么是CTS、CLS、CLR

CTS:Common Type System 通用类型系统。
CLS:Common Language Language Specification 通用语言规范。
CLR:Common Language Runtime 公共语言运行库。

1、CLR可以理解为一个包含运行.NET程序的引擎和一堆符合公共语言基础(CLI)结构的类库的集合。CLR是一个规范的实现,我们开发的几乎所有的.NET程序都基于CLR的类库来实现,并且运行在CLR提供的运行引擎之上。所谓.NET框架,指的就是公共语言运行库。

2、CTS定义了一组语言编译器必须遵循的规则,以定义、引用、使用和存储引用类型和值类型。因此,遵循CTS,在不同语言中编写的对象才能彼此交互。也就是说CTS定义了一个可以在CLR上运行的类型规范。通俗讲,每种语言都定义了自己的类型,.Net通过CTS提供了公共的类型,然后翻译生成对应的.Net类型。例如CTS的类型对应c#的关键字,Int32、Int16→int、String→string、Boolean→bool。

3、但并不是所有的类型都可以用于所有的语言。要建立可以在所有.NET语言中访问的组件,就要使用CLS。CLS是一种语言必须支持的最小规范要求。如果把公共方法限制为CLS,那么支持.NET的所有语言就都可以使用我们的类!也就是说CLS是CTS的一个子集,定义了所有面向.NET的程序需要符合的最小规范。通俗讲,不同语言语法的不同,每种语言都有自己的语法,.Net通过CLS提供了公共的语法,然后不同语言翻译生成对应的.Net语法。
参考:
1、https://blog.csdn.net/huang_xw/article/details/8578162
2、https://blog.csdn.net/broadview2006/article/details/3536748

你可能感兴趣的:(C#)