我遇到过一些代码,其中变量被初始化为减一。那是在一些旧代码中,这背后有什么原因吗?因为据我所知,所有的值类型都被初始化为零。
我已经测试了代码,它不会改变任何东西来保持 int 变量未初始化或减一,结果是一样的。你会启发我吗?
class Program
{
static void Main()
{
SampleDelegate del = new SampleDelegate(SampleMethodOne);
del += SampleMethodTwo;
int Number = -1; //or -> int Number;
int returnedValue = del(out Number);
Console.WriteLine("returnedValue = {0}", returnedValue);
Console.ReadLine();
}
public static int SampleMethodOne(out int Number)
{
return Number = 1;
}
public static int SampleMethodTwo(out int Number)
{
return Number = 3;
}
}
public delegate int SampleDelegate(out int Number);
/returns 2
TL;DR:这取决于,也许没有答案
可能的答案:
初始化变量更好。您永远不知道如何在某些具有意外值可能很危险的后续函数中使用它(在优化代码时,如果未初始化,则无法确定默认值)。
在某些情况下,当您只需要一个 uint 时,可能会出于 API 中的某些兼容性原因使用 int。在这种情况下,初始化为负值可能是检测未设置/无效值的简单方法。
没有真正的原因,只是开发人员的习惯。我同意评论,如果可能的话问他
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句