
CLR Via C#
文章平均质量分 71
Wisper_lzy
Talk is cheap,show me the code
展开
-
CLR Via C# 第五章(基元类型,引用类型与值类型)(2)——读书笔记
装箱与拆箱值类型不需要再托管堆中分配,不被垃圾回收,不通过指针引用, 但很多时候我们往往需要获取对值类型实例的引用 比如传一个值类型实例作为实参 然而形参有时确实Object类型 形如 Int32 a=0; Object obj=(Object )a; 这类操作称作装箱,即值类型换成引用类型。 装箱步骤 1.在托管堆中分配内存,分配的内存量是值类型各字段所需要的内存量再加上原创 2016-05-24 21:04:59 · 308 阅读 · 0 评论 -
CLR Via C# 第四章 类型基础——读书笔记
1.类型转换在以下示例代码中,第一部分能通过编译,因为方法PromoteEmoloyee期待一个Object,而Manage正是Object一个派生类,所以能进入该方法,进入方法后,o是Manager对象的引用,由于对o向Employee转型,CLR核实对象o引用的是一个Emoloyee或是其派生类对象,核实成功,CLR执行转型。而第二部分,同理,DateTime能够进原创 2016-05-19 14:58:43 · 529 阅读 · 0 评论 -
CLR Via C# 第一章(CLR的执行模型)——读书笔记
CLR(common language runtime) 公共语言运行时 是一种可由多个编程语言使用的"运行时"CLR的核心功能(内存管理,程序集加载,安全性,异常处理和线程同步)可由面向CLR的所有语言使用CLR执行模型1.将源代码编译成托管模块在使用对应编译器对一种支持CLR的语言进行编译时,结果都是托管模块(managed model)(包括中间语言(IL)以及元数据原创 2016-05-18 15:23:32 · 573 阅读 · 0 评论 -
CLR Via C# 第五章(基元类型,引用类型与值类型)(1)——读书笔记
基元类型,引用类型与值类型1.基元类型基元类型:编译器直接支持的概念称作基元类型 简单来说,就是int,char,bool这些基本类型,基元类型会直接映射到Framework类库(FCL)中的类型, 如int会映射到System.Int32类型,所以,int a=0;System.Int32 b=0;两者等价,都会编译生成成相同的IL 直接使用FCL类型名称,更能够解决概念误差。2.chec原创 2016-05-21 15:07:20 · 500 阅读 · 0 评论