c#什么是值类型什么是引用类型

 我来答
刺任芹O
2022-11-16 · TA获得超过6.2万个赞
知道顶级答主
回答量:38.7万
采纳率:99%
帮助的人:8987万
展开全部

一、数据类型在它自己的内存分配中存储数据,则该数据类型就是“值类型”。值类型包括:

1、所有数字数据类型

2、Boolean、Char和Date

3、所有结构,即使其成员是引用类型

4、枚举,因为其基础类型总是SByte、Short、Integer、Long、Byte、UShort、UInteger或ULong

二、“引用类型”包含指向存储数据的其他内存位置的指针。引用类型包括:

1、String

2、所有数组,即使其元素是值类型

3、类类型,如Form

4、委托

扩展资料

值类型和引用类型使用注意事项

值类型的变量保存到内存的线程的堆栈中;而引用类型的变量会保存到托管堆中,其中这里说的托管堆又可以分为GC堆、LOH堆。其中GC堆、LOH堆是根据创建的对象的大小来分配到不同的堆中的。

判断的平衡点是这个对象是否超过85000字节,如果小于85000字节,则系统把对象保存到GC堆中;如果大于或者等于85000字节,则系统保存到LOH堆中(一般LOH创建的对象是数组)。所以托管堆就是指GC堆和LOH堆的集合。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式