给出以下代码段:
public class Foo
{
public IEnumerable<string> Sequence { get; set; }
public IEnumerable<string> Bar()
{
foreach (string s in Sequence)
yield return s;
}
}
Run Code Online (Sandbox Code Playgroud)
以下代码片段在语义上是等价的,还是不同?如果不同,它们的功能如何不同?
public class Foo2
{
public IEnumerable<string> Sequence { get; set; }
public IEnumerable<string> Bar2()
{
return Sequence;
}
}
Run Code Online (Sandbox Code Playgroud)
这个问题的灵感来自于这个问题,它提出了一个类似情况的不同问题.