且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

C#中的值类型(value type)与引用类型(reference type)的区别

更新时间:2021-07-22 12:23:00

ylbtech- .NET-Basic:C#中的值类型与引用类型的区别

  C#中的值类型(value type)与引用类型(reference type)的区别

1.A,相关概念返回顶部
 
   C#中有两种数据类型:值类型(value type)和引用类型(reference type)。
 
  值类型的变量直接包含它们的数据,而引用类型的变量存储对它们的数据引用,后者称为对象。对于引用类型,两个变量可以引用同一对象,因此对一个变量操作可能影响另一个变量所引用的对象。对于值类型,每个变量都有它们自己的数据副本(除 ref 和 out 参数变量外),因此对一个变量操作不可能影响另一个变量。
 
1.B,测试源代码返回顶部
C#中的值类型(value type)与引用类型(reference type)的区别
using System;

namespace ConsoleApplication1
{
    class RefClass
    {
        public int Value = 0;
    }
    /// <summary>
    /// ylb:C#中的值类型与引用类型的区别
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            int val1 = 0;
            int val2 = val1;
            val2 = 123;
            RefClass ref1 = new RefClass();
            RefClass ref2 = ref1;
            ref2.Value = 123;   //主要只修改了对象 ref2 中的值
            Console.WriteLine("Values:{0},{1}",val1,val2);
            Console.WriteLine("Refs:{0},{1}", ref1.Value, ref2.Value);
        }
    }
}
C#中的值类型(value type)与引用类型(reference type)的区别

//ExecutionResult

Values:0,123
Refs:123,123
请按任意键继续. . .
1.C,资源下载返回顶部
 无

本文转自ylbtech博客园博客,原文链接:http://www.cnblogs.com/ylbtech/p/3149871.html,如需转载请自行联系原作者