[C#] 值类型与引用类型的区别?
2008-05-08 12:56
323 查看
.NET将数据类型分为值类型(value type)和引用类型(reference type)
一个具有值类型(value type)的数据存放在栈内的一个变量中。即是在栈中分配内存空间,直接存储所包含的值,其值就代表数据本身。值类型的数据具有较快的存取速度。
一个具有引用类型(reference type)的数据并不驻留在栈中,而是存储于堆中。即是在堆中分配内存空间,不直接存储所包含的值,而是指向所要存储的值,其值代表的是所指向的地址。当访问一个具有引用类型的数据时,需要到栈中检查变量的内容,该变量引用堆中的一个实际数据。引用类型的数据比值类型的数据具有更大的存储规模和较低的访问速度。
一个具有值类型(value type)的数据存放在栈内的一个变量中。即是在栈中分配内存空间,直接存储所包含的值,其值就代表数据本身。值类型的数据具有较快的存取速度。
一个具有引用类型(reference type)的数据并不驻留在栈中,而是存储于堆中。即是在堆中分配内存空间,不直接存储所包含的值,而是指向所要存储的值,其值代表的是所指向的地址。当访问一个具有引用类型的数据时,需要到栈中检查变量的内容,该变量引用堆中的一个实际数据。引用类型的数据比值类型的数据具有更大的存储规模和较低的访问速度。
相关文章推荐
- C# 值类型,引用类型区别
- 读<<CLR via C#>>总结(3) 值类型和引用类型的区别
- 彻底理解C#中值类型和引用类型的区别
- c# 引用类型和值类型区别
- [C#] 值类型与引用类型的区别?
- C# 数据类型的引用类型、值类型内存存储方式以及区别; 函数参数传递的引用传递(址传递)、值传递区别
- C# 引用类型和值类型的区别
- C++与C#中值类型与引用类型的区别
- C#中值类型和引用类型解析、本质区别有哪些?
- C#中参数为引用类型加ref和不加的区别
- C# 值类型传参与引用类型传参 在多线程调用时的区别
- C#引用类型和值类型的区别
- 深入C#内存管理来分析值类型&引用类型,装箱&拆箱,堆栈几个概念组合之间的区别
- C# 引用类型 Customer customer1; customer1 = new Customer();和Customer custumer1 = new Customer();的区别
- c# 引用类型和值类型区别 (摘)
- C#里面的值类型与引用类型的区别
- C#中引用类型和值类型的区别,分别有哪些
- C#值类型和引用类型的区别
- 实际举例C#引用类型和值类型的区别study(转)
- 彻底理解C#中值类型和引用类型的区别