string
是引用类型还是值类型?任何人都可以给出相应的描述吗?
答案 0 :(得分:8)
string
是一个不可变参考类型。以下是一个简短的例子:
// All of these point to the same string in the heap
string hello = "Hello World!"; // creates string
string hello2 = "Hello World!"; // uses the previous string from the intern pool
string hello3 = hello2;
如果您正在寻找更多信息,请查看Jon Skeet的帖子:
答案 1 :(得分:3)
System.String
是一个引用类型,一个非常好的解释是Jon Skeet:C# in Depth: Strings in C# and .NET。他的文章的关键点是:
最后一点是使string
的行为类似于值类型的那一点:
string s1 = "value";
string s2 = "value";
// result will be true.
bool result = (s1 == s2);
答案 2 :(得分:0)
我们自己的主人John Skeet从他的书“C#in Depth”中查阅了Strings in C# and .NET一章。它告诉你所有你需要知道的事情。