我喜欢正确命名变量,但在某些情况下很难做到。
因此,如果我的对象实现了 IDisposable
,那么我可以使用:
using (var whatever = new Whatever()) { //... }
但这种情况很少见,所以我找到了另一种处理方式——匿名 block (不确定它是如何正确调用的):
//...
{
var whatever = new Whatever();
//...
}
//...
if (condition)
{
var whatever = new Whatever();
}
这是一个好的方法吗?是否存在任何缺陷或普遍认为它会降低代码可读性?
最佳答案
基本上,如果编译器没有报错并且您的代码可读且易于理解,那没有什么问题。
例如:
foreach (var foo in foos)
{
var task = new FooTask(foo);
task.Run();
}
foreach (var bar in bars)
{
var task = new BarTask(bar);
task.Run();
}
这实际上(在我看来)比
更容易阅读foreach (var foo in foos)
{
var task1 = new FooTask(foo);
task1.Run();
}
foreach (var bar in bars)
{
var task2 = new BarTask(bar);
task2.Run();
}
关于c# - 一个方法中具有相同名称的多个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16922559/