C# Tips2011-07-04 博客园 roping1.值类型和引用类型对于C#的变量来说,有两种类型,值类型(Value Type)和引用类型(Reverence Type)。两者不同点:值类型继承自ValueType如下图:

两者存储方式不同:值类型变量存储在栈当中。引用类型内存数据结构表示分有两部分构成,一部分引用,存储在在栈中, 一部为实际变量成员,存储在在堆中。如图:

注意:以上情况是指值类型和引用类型不是作为引用类型的成员,如果作为引用类型变量成员,值类型的数据和引用类型的引用都存储在栈中。