在 C# 中,对象可以通过赋值操作符(=)将一个对象的值赋给另一个对象。这种赋值是通过引用进行的,即将一个对象的引用复制给另一个对象,使得两个对象指向同一个内存地址。\n\n下面是一个示例代码,演示了如何将一个对象赋值给另一个对象:\n\ncsharp\nclass MyClass\n{\n public int MyProperty { get; set; }\n}\n\nclass Program\n{\n static void Main(string[] args)\n {\n MyClass a = new MyClass();\n a.MyProperty = 10;\n\n MyClass b = a; // 将a对象赋值给b对象\n\n Console.WriteLine("a.MyProperty: " + a.MyProperty); // 输出:a.MyProperty: 10\n Console.WriteLine("b.MyProperty: " + b.MyProperty); // 输出:b.MyProperty: 10\n\n // 修改b对象的属性值\n b.MyProperty = 20;\n\n Console.WriteLine("a.MyProperty: " + a.MyProperty); // 输出:a.MyProperty: 20\n Console.WriteLine("b.MyProperty: " + b.MyProperty); // 输出:b.MyProperty: 20\n }\n}\n\n\n在上述代码中,我们创建了一个MyClass类,并定义了一个MyProperty属性。然后,在Main方法中,我们创建了一个名为aMyClass对象,并给其MyProperty属性赋值为10。\n\n接下来,我们将a对象赋值给b对象,这样b对象将引用与a对象相同的内存地址。因此,ab都指向同一个对象。\n\n在修改b.MyProperty属性的值后,a.MyProperty的值也发生了变化,这是因为ab引用的是同一个对象。

C# 对象赋值:引用传递与内存地址共享

原文地址: https://www.cveoy.top/t/topic/puH3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录