C#中值类型和引用类型的区别

相同点:都继承自 system.object类。

不同点:

           1)范围:

valueType:结构体,enum,可空类型

referenceType:数组,类,interface,delegate.

         2) 内存分配:

valueType: 永远分配在声明它的地方,作为字段时,分配在所属变量分配的地方;作为局部变量时,分配在栈上。

referenceType:在栈上存储一个引用地址,实际内容分配在托管堆上。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 《CLR via C#》作者Jeffrey Richter的话来说,“不理解【引用类型】和【值类型】区别的程序员将...
    LH_晴阅读 5,749评论 0 3
  • http://www.cnblogs.com/zengming/p/6037048.html 1.值类型(Valu...
    iFavorite阅读 2,920评论 0 0
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,375评论 30 472
  • 1. [C#语言基础]请简述拆箱和装箱。 答: 装箱操作: 值类型隐式转换为object类型或由此值类型实现的任何...
    胤醚貔貅阅读 10,317评论 1 29
  • 值类型 值类型的特性: 1.C#的所有值类型均隐式派生自System.ValueType。 各个值类型及其基类: ...
    天lc呐阅读 3,081评论 0 0