• 候选企业:北京控股集团有限公司 2019-07-14
  • 这部非虚构原作改编美剧,冷静展示“9·11”背后人性纠缠 2019-07-11
  • 基因检测能“解码生命”吗(关注) 2019-07-11
  • 你这个【炒】啊【炒】的,还缺少一个【炒人】,而【炒人气】你听说过没有。。。?[福尔摩斯] 2019-06-27
  • 乌鲁木齐市水磨沟区开建两座立体停车库 2019-06-27
  • 湖州林城:多渠道搭建“双禁”宣传平台 2019-06-25
  • 广西贵港一工棚钩机施工引发爆炸 致3人受伤 2019-06-25
  • 九成AI企业亏损:人工智能遭遇商业落地之痛 2019-06-21
  • 90后基金经理“老鼠仓”:赚482元被没收 再罚10万 2019-06-09
  • 【关注】尤权云南调研:做好民族宗教工作 促进民族团结、宗教和顺 2019-06-09
  • 青海:第五批党外代表人士挂职锻炼工作启动 2019-06-08
  • 《中国人民大学学报》 2019-06-07
  • 还是中国足球队最牛,因为他稳定;中国股市就不一样了,怎么形容呢?唉,还不如中国足球! 2019-06-07
  • 3岁小孩骑童车绊倒老人算交通事故警察这样解释 2019-06-06
  • 京津冀协同 塑造区域发展新格局 2019-06-06
  • 云盟科技微信公众号
    云盟科技微博
    咨询热线:0731-88888283 | 0731-88880833
    湖南领先的微信开发、APP开发、软件研发、互联网+、智慧党建、多用户商城提供商!
    我们的优势: 专业软件开发、系统建设公司,顶尖设计师量身定制 高配置主机,BGP多线,高速访问 领先的企业互联网信息化整体解决方案服务商 48小时快速解决网站问题
    您的位置: 历史上的双色球042 > 新闻动态 > 技术支持 > 查看内容
    一,什么是 CTS、CLS、CLR

      (1)CTS(Common Type System)是通用类型系统。主要用于解决不同语言的数据类型不同问题,他是一种类型标准,在这个标准中不但实现了COM的变量兼容类型,还定义了通过 用户自定义的方式来进行类型扩展,所以.NET平台为目标语言通过建立本身数据类型与CTS之间的映射来实现与其他语言的数据类型的交互。

    ?。?)CLS(Common Language Specification)是公共语言规范,主要用于实现多种语言之间的互操作性,是公共类型系统的子集。

       (3)CLR(Common Language Runtime)公共语言运行库,是所有应用程序都要使用的编程基础,他如同一个支持.net应用程序运行和开发的虚拟机。

    参看下图有助于了解。


    二,CTS、CLS、CLR有什么用

     ?。?)CTS

      CTS,他定义了如何在.NET Framework 运行库中声明,使用,和管理类型,同时也是.NET Framework运行库支持跨语言基础的一个重要组成部分。

      功能:建立一个支持跨语言集成,类型安全和高性能代码执行的框架。提供一个支持完整实现多种编程语言的面向对象的模型。定义各语言必须遵守的规则,有助于确保用不同语言编写的对象能够发生交互 作用。

      定义公共语言运行库在声明、使用和管理类型时所遵循的规则的模型。通用类型系统建立一个框架,该框架使得跨语言集成、类型安全和高性能代码执行成为可能。它是您可以用来生成类库的原始资料。

    通用类型系统支持两种类别的类型,分别为值类型和引用类型。

     ?。?)CLS

      CLS即公共语言规范,它是许多应用程序所需的一套基本语言功能。CLS规则定义了通用类型系统的子集,即所有适用于公共类型系统的规则都适用 于 CLS,除非CLS中定义了更严格的规则。CLS通过定义一组开发人员可以确信在多种语言中都可用的功能来增强和确保语言的互用性。CLS还建立了CLS 遵从性要求,可帮助用户确定托管代码是否符合CLS以及一个给定的工具对托管代码(该代码是使用CLS功能的)开发的支持程度。

     ?。?)CLR

      CLR即公共语言运行库,是.NET Framework的基础,可以将其看作一个在执行时管理代码的代理,它提供了内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。

    三,.NET3C:CTS、CLS和CLR

    .NET结合Java和COM解决方案两者优点来解决互操作性问题。类似于COM定义的标准二进制格式,.NET定义了一个称为通用类型系统 Common Type System(CTS)的类型标准。这个类型系统不但实现了COM的变量兼容类型,而且还定义了通过用户自定义类型的方式来进行类型扩展。任何以.NET 平台作为目标的语言必须建立它的数据类型与CTS的类型间的映射。所有.NET语言共享这一类型系统,实现它们之间无缝的互操作。该方案还提供了语言之间 的继承性。例如,用户能够在VB.NET中派生一个由C#编写的类。

    很显然,编程语言的区别不仅仅在于类型。例如,一些语言支持多继承性,一些语言支持无符号数据类型,一些语言支持运算符重载。用户应认识到这一点, 因此.NET通过定义公共语言规范(CLS:Common Language Specification),限制了由这些不同引发的互操作性问题。CLS制定了一种以.NET平台为目标的语言所必须支持的最小特征,以及该语言与其 他.NET语言之间实现互操作性所需要的完备特征。认识到这点很重要,这里讨论的特征问题已不仅仅是语言间的简单语法区别。例如,CLS并不去关心一种语 言用什么关键字实现继承,只是关心该语言如何支持继承。

    CLS是CTS的一个子集。这就意味着一种语言特征可能符合CTS标准,但又超出CLS的范畴。例如:C#支持无符号数字类型,该特征能通过CTS 的测试,但CLS却仅仅识别符号数字类型。因此,如果用户在一个组件中使用C#的无符号类型,就可能不能与不使用无符号类型的语言(如VB.NET)设计 的.NET组件实现互操作。这里用的是“可能不”,而不是“不可能”,因为这一问题实际依赖于对non-CLS-compliant项的可见性。事实 上,CLS规则只适用于或部分适用于那些与其他组件存在联系的组件中的类型。实际上,用户能够安全实现含私有组件的项目,而该组件使用了用户所选择使用 的.NET语言的全部功能,且无需遵守CLS的规范。另一方面,如果用户需要.NET语言的互操作性,那么用户的组件中的公共项必须完全符合CLS规范。

    最后一个C是公共语言运行库Common Language Runtime(CLR)。简单地说,CLR是CTS的实现,也就是说,CLR是应用程序的执行引擎和功能齐全的类库,该类库严格按照CTS规范实现。作 为程序执行引擎,CLR负责安全地载入和运行用户程序代码,包括对不用对象的垃圾回收和安全检查。在CLR监控之下运行的代码,称为托管代码 (managed code)。作为类库,CLR提供上百个可用的有用类型,而这些类型可通过继承进行扩展。对于文件I/O、创建对话框、启动线程等类型—— 基本上能使用Windows API来完成的操作,都可由其完成。

    关于我们

    云盟科技专注互联网领域的手机APP研发、软件系统研发、IT技术服务等,是一家领先于互联网的企业信息化整体解决方案服务商。公司的服务宗旨是:"用良心做好服务,用实力做好质量!"

    联系我们

    • 地址: 湖南长沙创谷国家广告产业园A3栋13楼(全层)
    • 电话: 0731-88888283 | 0731-88880833
    • Email: [email protected]
    扫描二维码 关注我们官方微信 解决建站问题
    咨询热线

    0731-88888283
    0731-88880833

    周一至周六9:00-18:00

    历史上的双色球042

    Copyright ? 2008-2017 湖南云盟科技有限公司 版权所有    | 湘ICP备17002345号

    云盟科技法律顾问:谢律师    ?

  • 候选企业:北京控股集团有限公司 2019-07-14
  • 这部非虚构原作改编美剧,冷静展示“9·11”背后人性纠缠 2019-07-11
  • 基因检测能“解码生命”吗(关注) 2019-07-11
  • 你这个【炒】啊【炒】的,还缺少一个【炒人】,而【炒人气】你听说过没有。。。?[福尔摩斯] 2019-06-27
  • 乌鲁木齐市水磨沟区开建两座立体停车库 2019-06-27
  • 湖州林城:多渠道搭建“双禁”宣传平台 2019-06-25
  • 广西贵港一工棚钩机施工引发爆炸 致3人受伤 2019-06-25
  • 九成AI企业亏损:人工智能遭遇商业落地之痛 2019-06-21
  • 90后基金经理“老鼠仓”:赚482元被没收 再罚10万 2019-06-09
  • 【关注】尤权云南调研:做好民族宗教工作 促进民族团结、宗教和顺 2019-06-09
  • 青海:第五批党外代表人士挂职锻炼工作启动 2019-06-08
  • 《中国人民大学学报》 2019-06-07
  • 还是中国足球队最牛,因为他稳定;中国股市就不一样了,怎么形容呢?唉,还不如中国足球! 2019-06-07
  • 3岁小孩骑童车绊倒老人算交通事故警察这样解释 2019-06-06
  • 京津冀协同 塑造区域发展新格局 2019-06-06
  • 英雄联盟符文 辽宁11选5彩票走势图 7m足球比分 全民欢乐捕鱼人赢话费 那不勒斯vs多特蒙德 法国昂热国立音乐学院 上海快3开奖l结果 水果拉霸试玩 广西快乐十分预测技巧 两码中特期期准