본문 바로가기

IT 살이/04. 기술 - 프로그래밍

C# 2.0 iterators

벌써 C#이 버전 3.0까지 나왔다는데, 달봉이는 아직도 2.0 버전에 당황을 하곤 한다. 

지금 소개할 문법도 오늘 아침 처음으로 본 것이다.

using System;
using System.Collections.Generic;
class Test
{
  public static void Main()
  {
       foreach (string s in GetItems())
           Console.WriteLine(s);
  }

  private static IEnumerable GetItems()
  {
       yield return "Hello yield 1";
       yield return "Hello yield 2";
       yield return "Hello yield 3";
       yield return "Hello yield 4";
       yield return "Hello yield 5";
  }
}

"yield return" 문이 있는데, iteration의 다음 값을 반환한다고 한다.
"yield break" 문도 있단다.

『The yield return statement produces the next value of the iteration.
  The yield break statement indicates that the iteration is complete.』

GetItems() 메소드의 리턴 타입이 IEnumerable 이라는 것도 주목할 부분이다.

자세한 내용은 다음 포스트를 보자.

2016/01/19 - [04.기술-APP/C#] - C#, yield return




참조 문서
c# 2.0 iterators -
http://community.bartdesmet.net/blogs/bart/archive/2006/07/06/4121.aspx