我想知道在每對夫婦的循環代碼,一些版本是否消耗比第二個內存少,如果這是真的,在一些版本中,我們爲每個變量分配的新空間內的變量循環週期。定義循環VS外
注:2是很明顯的,1和3是比較有趣..
。
While(!exit)
{
int x = 5;
}
對戰:
int x= 0;
While(!exit)
{
x = 5;
}
引用類型相同的問題: 。
While(!exit)
{
Point p = new Point();
p.x = 5;
}
對戰:
Point p = new Point();
While(!exit)
{
p.x = 5;
}
。沒有類似分配到1?:
While(!exit)
{
Point p = point1;
}
對比基準類型:
Point p = null;
While(!exit)
{
p = point1;
}
我會假設編譯器會爲你優化它。 – Khan
對於所有實際目的而言,這並不重要。將範圍界定作爲變量聲明決策的基礎,而不是性能。 –
*順便說一句:* Point是'struct',所以值的類型。 –