我有一些在foreach循環中創建對象的代碼。所以:在foreach循環中創建對象
private IEnumerable<StrongTypeResult> ConvertResults(List<Object> results)
{
return results.Select(result => new StrongTypeResult(result)).ToList();
}
FYI,StrongTypeResult是一個結構。由於每個new StrongTypeResult(result)
對象都分配在堆棧上,因此如果有大量對象要創建,我是否會遇到一個stackoverflow問題? StrongTypeResult
上課會更好嗎?
我不相信你的代碼會做你認爲它的作用。 –
你在代碼示例中是否缺少'yield'語句?編輯:其實我甚至不確定這裏發生了什麼。 –
我同意@Chris你可能錯過了一個良率。至於你的其他問題,在這裏你沒有任何堆棧構造項目,即使你這樣做了,結構也包裝了一個'Object',它是對某個項目的引用,我們不知道它是什麼。基本上,我不會擔心這裏的一個stackoverflow。我會更擔心這個代碼沒有做它應該做的。 – pstrjds