在VS 2015编译器上,我对此进行了测试
static void Main(string[] args)
{
string str1 = null;
string str2 = null;
if(str1==str2) //they are the same on my machine
{
}
}
但这是有据可查的行为吗?根据定义,NULL
是未定义的行为,因此将NULL
与另一个NULL
进行比较是不确定的。在我的计算机上,使用当前的.Net框架,这两个NULL
可能是相同的。但是将来,它们可能不再是。
在这种情况下,我的代码将安静地中断。
始终假设以上两个NULL
字符串始终相同是否安全?