引用类型与值类型

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Demo
{
    class MyClass
    {
        public int val; // 引用类型
    }

    struct myStruct
    {
        public int val;
    }

    class Program
    {
       
        static void Main(string[] args)
        {
            MyClass objectA = new MyClass();
            MyClass objectB = objectA;
            objectA.val = 10;
            objectB.val = 20;

            myStruct structA = new myStruct();
            myStruct structB = structA;
            structA.val = 30;
            structB.val = 40;

            Console.WriteLine("objectA.val = {0}",objectA.val);
            Console.WriteLine("objectB.val = {0}", objectB.val);
            Console.WriteLine("structA.val = {0}", structA.val);
            Console.WriteLine("structB.val = {0}", structB.val);

            Console.ReadKey();
        }
    }
}

对象是引用类型,结构是值类型。

引用类型,操作同一个地址。
值类型,操作不同的地址。

原文地址:https://www.cnblogs.com/jiqing9006/p/6763211.html