c#什么是值类型什么是引用类型
展开全部
一、数据类型在它自己的内存分配中存储数据,则该数据类型就是“值类型”。值类型包括:
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堆的集合。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询