c# – 在方法中放置局部变量声明的最佳实践?

C#最佳实践是在方法的顶部声明所有局部变量,还是在第一次使用时声明它们?

例1:

void myMethod()
{
    var example = String.Empty;
    var xmlDoc = new XmlDocument();

    xmlDoc.LoadXml("c:\my.xml");
    example = doc.SelectSingleNode("//TestNode").OuterXml;
}

例2:

void myMethod()
{
    var xmlDoc = new XmlDocument();

    xmlDoc.LoadXml("c:\my.xml");
    var example = doc.SelectSingleNode("//TestNode").OuterXml;
}
最佳答案
从历史上看,变量是在许多语言中预先声明的,因为您必须预先指示编译器关联寄存器和/或在堆栈上为它们分配空间.在.NET中,IL代码实际上仍然需要它,因为它使编译器的工作更容易.

值得庆幸的是,C#比IL高得多,所以我们不必担心这些细节.从该约束中解脱出来,在限制变量范围方面存在很多概念上的价值,因为这意味着您需要查看的代码越少,以了解变量的变化.在方法顶部声明的变量可以在该方法的任何位置使用.在内部’if’中声明的变量仅在该范围内使用,您可以在该范围之外忽略它;此外,方法中稍后声明的变量只能在声明后使用.它是绝缘/封装的缩影,进一步减少了开发人员必须立即考虑的事情,以了解给定的代码片段正在做什么.

转载注明原文:c# – 在方法中放置局部变量声明的最佳实践? - 代码日志