【发布时间】:2016-03-10 15:16:30
【问题描述】:
namespace Test
{
class Program
{
static void Main(string[] args)
{
A a = new A();
a.MyString = "Metallica ";
PrintA(a);
Console.WriteLine(a.MyString);
string name = "Linkin ";
Print(name);
Console.WriteLine(name);
Console.ReadLine();
}
static void PrintA(A a)
{
a.MyString = a.MyString + "Rocks";
Console.WriteLine(a.MyString);
}
static void Print(string text)
{
text = text + "Park";
Console.WriteLine(text);
}
}
class A
{
public string MyString { get; set; }
}
}
输出:
金属摇滚
金属摇滚
林肯公园
链接
我的问题是,如果字符串是引用类型(即类),那么为什么在方法 Print()之后它不改变变量 name 的值> 被调用,就像它发生在引用变量 a 的成员 MyString 上一样。
【问题讨论】:
-
“引用类型”并不表示会通过引用传递。