相关疑难解决方法(0)

C#中的引用类型

考虑以下代码:

public class Program
{
    private static void Main(string[] args)
    {
        var person1 = new Person { Name = "Test" };
        Console.WriteLine(person1.Name);

        Person person2 = person1;
        person2.Name = "Shahrooz";
        Console.WriteLine(person1.Name); //Output: Shahrooz
        person2 = null;
        Console.WriteLine(person1.Name); //Output: Shahrooz
    }
}

public class Person
{
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

很显然,当分配person1person2Name物业person2发生变化,Nameperson1也将改变.person1person2有相同的参考.

为什么何时person2 = null,person1变量也不会为空?

.net c# pointers

78
推荐指数
4
解决办法
6754
查看次数

标签 统计

.net ×1

c# ×1

pointers ×1