.Net CLR via C#第4版
文章平均质量分 54
学习记录
鹏飞于天
业精于勤,荒于嬉;行成于思,毁于随。
不积跬步,无以至千里;不积小流,无以成江海。
工作并不能带来进步,只能是业务的熟练,所以要不停学习。
展开
-
C#中的is和as操作符来转型
as:类型转换,和显示转型对比,简化写法,提升性能。CLR的(显示转型)类型检查增强了安全性,但无疑会对性能造成一定影响。这是因为CLR首先必须判断变量引用的对象的实际类型,然后,CLR必须便利继承层次结构,用每个基类型去核对指定的类型。由于这是一个相当常用的编程模式,所以C#专门提供了as操作符。is:检查对象是否兼容于指定类型,返回Boolean值true或者false。注意,is操作符永远不抛出异常。如果对象引用null,is操作符总是返回false。原创 2023-08-20 22:34:47 · 119 阅读 · 0 评论 -
CLR的执行模型--1.2
1.2 将托管模块合并成程序集 概念 程序集(assembly):首先程序集是一个或多个模块/资源文件的逻辑性分组;其次,程序集是重用、安全性以及版本控制的最小单元。取决于你选择的编译器或者工具,既可生成单文件程序集,也可生成多文件程序及。在CLR的世界中,程序集相当于“组件”。(第2章会深入探讨) 清单(manifest):PE32(+)文件中包含的一个数据块,清单也是元数据表的集合,这些表描述了构成程序集的文件、程序集的文件所实现的公开导出的类型以及与程序集关联的资源或数据文件。 自描..原创 2021-01-14 23:51:59 · 90 阅读 · 0 评论 -
CLR执行模型
执行流程 将源代码编译成托管模块 将托管模块合并成程序集 加载公共语言运行时 执行程序集的代码 相关概念 Framework类库 通用类型系统(CTS) 公共语言运行时(CLR) 公共语言规范(CLS) 了解或者掌握 本机代码生成器:NGen.exe 与非托管代码的互操作性 1.1 概念 公共语言运行时(CLR)是一个可有多重编程语言使用的“运行时”。CLR核心功能可由面向CLR的所有语言使用(比如内存管理、程序集加载、安全性、异常处理.原创 2021-01-11 11:14:19 · 191 阅读 · 0 评论