2013年2月28日

构造函数的代码膨胀问题

摘要: 1. 类1 public class A { private Int32 x = 15; }查看其默认的无参构造函数形成的IL Code:.method public hidebysig specialname rtspecialname instance void .ctor() cil managed{ // Code size 16 (0x10) .maxstack 8 IL_0000: ldarg.0 IL_0001: ldc.i4.s 15 IL_0003: stfld int32 ConsoleApplication9.... 阅读全文

posted @ 2013-02-28 23:14 Gcam 阅读(185) 评论(0) 推荐(0) 编辑

构造函数

摘要: 小结:1. 引用类型的实例构造函数对于引用类型,如果没有显式为其定义任何构造函数,那么,许多编译器(包括c#编译器)将会定义一个默认的无参数构造函数,该构造函数的实现只是调用基类的无参构造函数,如public class SomeType{ ...}上述代码等同于下面的代码:public class SomeType{public SomeType():base(){ };}如果存在继承关系,编译器会自动产生调用基类无参构造函数的代码,沿着继承链一直到System.Object的无参构造函数。但实例构造函数是不能被继承的,只能被当前类使用,不能被子类调用。2. 值类型实例构造函数a. 值类型没 阅读全文

posted @ 2013-02-28 23:13 Gcam 阅读(197) 评论(0) 推荐(0) 编辑

导航