C#语言有个数据类型叫引用类型,是什么意思?

来源:百度知道 编辑:UC知道 时间:2024/05/06 16:13:07
它到底是什么类型?举例说明。

C# 支持两种变量类型:

• 值类型 — 这些是内置的基本数据类型,例如 char、int、float等基本数据类型(string除外) 、枚举以及用 struct 声明的用户定义类型。

• 引用类型 — 从基本类型构造而来的类和其他复杂数据类型。如:类、接口、数组和字符串。这种类型的变量并不包含类型的实例,而只是包含对实例的引用。
值类型和引用类型的区别在于他们在内存中的存储方式,值类型存贮在栈中,引用类型的内存单元中只存放对象的地址,而对象本身存贮在内存堆中。
值类型在内存中引用的时候会在堆栈中创建一个全新的副本,而不是简单的引用;而引用类型只是简单的引用对象的地址。

单元放的是另外一个对象的引用(地址)

在内存中开辟了一个对象,内存单元存放的是那个对象的地址,并非对象本身