文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>.net 里class 和struct的异同?

.net 里class 和struct的异同?

时间:2011-04-28  来源:.net 虾米

结构是一种简单的用户定义类型,也是类的一种轻量级替代品;

相同点:

  1、类和结构都有构造函数、属性、方法、字段、操作符、嵌套类型和索引器;

  2、结构体也可以实现多个接口;

不同点:

  1、因为结构体是隐式密封的,所以不支持继承;

  2、结构体不能初始化实例字段

  3、结构体没有析构函数或默认的无参构造函数;

  4、如果我们不定义构造函数,CLR将初始化结构体,将所有成员置零;

    如果我们定义了非默认的构造函数,就不会发生CLR初始化;

    因此,我们必须显式的初始化结构体中的所有字段;

  5、结构体数组在内存使用方面效率更高;结构体集合会低些,因为结构体集合的元素应该是引用类型的,所以结构体必须进行装箱处理;

    而装箱和拆箱都是有开销的;

    所以,类在大的集合中更有效率;

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载