我有一些在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