【发布时间】:2014-10-20 08:13:30
【问题描述】:
给定以下代码sn-p:
public class Foo
{
public IEnumerable<string> Sequence { get; set; }
public IEnumerable<string> Bar()
{
foreach (string s in Sequence)
yield return s;
}
}
下面的 sn-p 在语义上是等价的,还是不同的?如果不同,它们的功能有何不同?
public class Foo2
{
public IEnumerable<string> Sequence { get; set; }
public IEnumerable<string> Bar2()
{
return Sequence;
}
}
这个问题的灵感来自this question,this question 针对类似情况提出了不同的问题。
【问题讨论】:
标签: c# iterator yield-return deferred-execution