C# 引用类型赋值指向的是同一块内存 发表于 2020-10-18 | 分类于 编程爱好 | 评论数: | 阅读次数: 首先,属性是引用类型。引用类型之间赋值传递后,他们访问的应该是同一块内存区。 来测试一下: 12345678910111213141516171819202122232425262728293031323334353637383940using System; namespace ConsoleApp1 { class Program { static void Main() { A aa = new A(); aa.aaa(); Console.ReadKey(); } } class Test { public int a = 100; } class A { private Test TestA { get; set; } = new Test(); private B b = new B(); public void aaa() { Console.WriteLine( "之前:" + TestA.a); this.b.TestB = this.TestA; this.b.TestB.a = 200; // 通过对象b来更改。 Console.WriteLine("之后:" + TestA.a); } } class B { public Test TestB { get; set; } } } 输出: 12之前:100 之后:200 可见,对象b能够访问TestA属性指向的内存Test对象。 感谢支持! 打赏 微信支付 支付宝 本文作者: huvjie 本文链接: https://blog.huvjie.com/2020/10/18/201018N01/ 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!