您当前的位置: 首页 >  c#

C#值类型和引用类型

发布时间:2010-11-22 10:19:00 ,浏览量:0

所有的数据在C#中都可以最为两种基本数据类型:值类型和引用类型。

什么是值类型呢,值类型数据存储在内存的栈中,可以提供快速访问。如果变量是值类型的,如果变是理企类型的,这个变量就包含实际数据,在一个内存区域保存自己的值。如果在代码中修改其值后,在内存中会保存修改的值。C#的整型,字符型,浮点型,布尔型等都属于值类型。结构,枚举也属于值类型。

引用类型指向存储在内存堆中的数据的指针和引用。引用类型总是指向一个对象,而且这个对象具有指定的类型,并且在堆上分配了地址。字符串,数组,接口,类,委托都属于引用类型。

值类型和引用类型的区别

1. 值类型的数据存储在内存的栈中;引用类型的数据存储在内存的堆中,而内存单元中只存放堆中对象的地址。

2. 值类型存取速度快,引用类型存取速度慢。

3. 值类型表示实际数据,引用类型表示指向存储在内存堆中的数据的指针或引用

4. 值类型继承自System.ValueType,引用类型继承自System.Object

5. 栈的内存分配是使用完自动释放;而引用类型使用完不立即回收,等待垃圾回收器回收。

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    105695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0639s