clr的执行模型(下)
Posted lzcgis
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了clr的执行模型(下)相关的知识,希望对你有一定的参考价值。
1.1 通用类型系统
Common type system用于描述类型的定义和行为,具体可以看ECMA,最好了解一下es5 es6。
一个类可以包含0个或多个成员,字段、方法、属性、事件。
Private 类内部访问
Assembly 同一程序级访问
Family or assembly 由程序集中的派生类访问
Public 任何人都可以访问
1.2 公共语言规范
不同语言创建的对象可通过com相互通信,clr使用标准类型集、元素据、公共执行环境集成了所有语言。Common language specification,cls详细定义了最小功能集,编译器支持该功能集,生成的类型才兼容其他符合cls、面向clr的语言生成的组件。
1.3 与非托管代码的互操作性
Clr支持三种互相操作:
(1)托管代码能调用dll中的非托管函数
托管代码通过P/Invoke机制调用dll中的函数。
(2)托管代码可以使用现有COM组件(服务器)
对于大量非托管com服务器,可创建一个托管程序集来描述com组件,托管代码可以像访问托管类型一样访问托管程序集中的类型。
(3)非托管代码可以使用托管类型(服务器)
以上是关于clr的执行模型(下)的主要内容,如果未能解决你的问题,请参考以下文章