【C#语言规范版本5.0学习】4、类型

C# 语言的类型划分为两大类:值类型 (Value type) 和引用类型 (reference type)。

值类型和引用类型都可以为泛型类型 (generic type),泛型类型采用一个或多个类型参数。类型参数可以指定值类型和引用类型。

type:

value-type

reference-type

type-parameter

第三种类型是指针,只能用在不安全代码中。

值类型与引用类型的不同之处在于:

值类型的变量直接包含其数据,而引用类型的变量存储对其数据的引用 (reference),后者称为对象 (object)。

对于引用类型,两个变量可能引用同一个对象,因此对一个变 量的操作可能影响另一个变量所引用的对象。

对于值类型,每个变量都有自己的数据副本,对一个变量的操作不可能影响另一个变量。

C# 的类型系统是统一的,因此任何类型的值都可以按对象处理。C# 中的每个类型直接或间接地从 object 类类型派生,而 object 是所有类型的最终基类。

引用类型的值都被视为 object 类型,被简单地当作对象来处理。值类型的值则通过对其执行装箱和拆箱操作按对象处理。

原文地址:https://www.cnblogs.com/TechSingularity/p/14431771.html