Я читаю викторину Джона Скита, и я задавался вопросом, почему второй образец моей работы не будет работать, пока первый сделает.
Почему это дает true
:
object x = new string("".ToArray());
object y = new string("".ToArray());
Console.WriteLine(x == y); //true
Но этого нет:
var k="k";
//string.intern(k); // doesn't help
object x = new string(k.ToArray());
object y = new string(k.ToArray());
Console.WriteLine(x == y); //false
Я использую fw 4.5 с vs2010.
К счастью, у меня также установлен vs2005, те же результаты: