воскресенье, 10 декабря 2017 г.

c# yield return

интересная фича языка. код сам за себя скажет.  минус - нет возможность yield return'у скормить коллекцию, нужно ее через foreach пропускать

static void Main(string[] args)
        {
            Console.WriteLine(f().First());


            Console.WriteLine("DONE");
            Console.ReadKey();
        }

        static IEnumerable<int> f()
        {
            try
            {
                Console.WriteLine("yield 1");
                yield return 1;
                Console.WriteLine("yield 2");
                yield return 2;
            }
            finally
            {
                Console.WriteLine("finally");
            }
        }


аутпут:
yield 1
finally
1
DONE

Комментариев нет:

Отправить комментарий