2012-02-03 143 views
0

可能重複:
Difference between declaring variables before or in loop?在循環內部還是在循環外部聲明變量會更好嗎?

考慮下面的兩個代碼:

Object i; 
for(int i=0;i<10;i++){ 
    i = new Object(); 
} 

OR

for(int i=0;i<10;i++){ 
    Object i = new Object(); 
} 

WH上面兩個代碼的性能和緩衝區溢出效果更好。

+0

我不明白這個問題。除非有一些Object的初始化代碼包含一些副作用,否則兩者基本上都是no-op。 – missingfaktor 2012-02-03 16:35:02

+0

@missingfaktor推測''我'會被用於某種方式。這只是爲了說明變量的範圍。 – Yuck 2012-02-03 16:35:58

回答

1

我喜歡儘可能限制變量的範圍。第一個選項將變量作用於整個包含函數,而後者將其限制在循環中。因此,我更喜歡後者,除非在循環完成後顯式需要訪問該變量。

相關問題