C# の string オブジェクトの参照値
C#の文字列型(object)の 参照 についていくつか試してみた結果   記事にあったもの static void Main(string[] args) { 	string a = "hello"; 	string b = "h"; 	b += "ello";  	Console.WriteLine(a == b); // True 	Console.WriteLine(object.ReferenceEquals(a, b)); // Flase }    実データはコピーされず、参照先が同じになります static void Main(string[] args) { 	string a = "hello"; 	string b = a;  	Console.WriteLine(a == b); // True 	Console.WriteLine(object.ReferenceEquals(a, b)); // True }    コンパイラの最適化によるものだろうか、定数はまとめられるらしい static void Main(string[] args) { 	string a = "hello"; 	string b = "he" + "llo";  	Console.WriteLine(a == b); // True 	Console.WriteLine(object.ReferenceEquals(a, b)); // True }   static void Main(string[] args) {     string a = "hello";     string b = Hello();      Console.WriteLine(a == b); // True     Console.WriteLine(object.ReferenceEquals(a, b)); // True }  static string Hello() {     string s = "hello";     return s; }  
 
