class Foo
{
public static IEnumerable<int> Range(int start, int end)
{
return Enumerable.Range(start, end);
}
public static void PrintRange(IEnumerable<int> r)
{
foreach (var item in r)
{
Console.Write(" {0} ", item);
}
Console.WriteLine();
}
}
class Program
{
static void TestFoo()
{
Foo.PrintRange(Foo.Range(10, 20));
}
static void Main()
{
TestFoo();
}
}
예상 출력 :Enumerable에서주는 예상치 못한 출력
10 11 12 13 14 15 16 17 18 19 20
실제 출력 :
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
이 코드의 문제는 무엇입니까? 무슨 일이야?
왜 '끝'이 아니고 '카운트'입니까? lib devs의 특정 디자인 목표는 무엇입니까? –