可能重复:
Difference between declaring variables before or in loop?
当我编写类似这样的东西时,是否存在任何(或任何值得注意的)性能差异(考虑将数十或数十万行从DB加载到Foo对象的集合中):
...
Foo myFoo;
while(reader.Read())
{
myFoo = new Foo();
myFoo.SomeProperty = reader.GetValue(0);
...
fooCollection.Add(myFoo);
}
或者
...
while(reader.Read())
{
Foo myFoo = new Foo();
myFoo.SomeProperty = reader.GetValue(0);
...
fooCollection.Add(myFoo);
}
答案 0 :(得分:4)
你在两个片段的循环的每个迭代中创建一个新的Foo实例,所以我不希望看到差异。
您应该使用像eqatec profiler这样的工具来描述您的代码:
答案 1 :(得分:2)