【发布时间】:2011-11-09 03:32:09
【问题描述】:
举个例子:
string me = "Ibraheem";
string copy = me;
me = "Empty";
Console.WriteLine(me);
Console.WriteLine(copy);
输出是:
Empty
Ibraheem
由于它是类类型(即不是结构),String copy 也应该包含Empty,因为 C# 中的 = operator 分配对象的引用而不是对象本身(如在 C++ 中)??
【问题讨论】:
-
=不会更改对象,而是将引用更改为指向不同的对象。您的代码有两个引用:me和copy,由于您只是将不同的对象分配给me,copy仍然指向旧对象。
标签: c# string types reference value-type