|
Listing 14-49 extracted from chapter Unsafe code, exceptions, anonymous methods, iterators
Listing 14-48< > Listing 14-50
This listing can be compiled with the command line: csc.exe /target:exe Example_14_49.cs Errors: 0 Warnings: 0
Example_14_49.cs
using System.Collections.Generic;
public class Program {
static IEnumerator<int> Fibo() {
int i1 = 1;
int i2 = 1;
int currentFibo = 0;
while ( true ) {
currentFibo = i1 + i2;
i1 = i2;
i2 = currentFibo;
// Let's signal that the new number is ready to be consummed.
yield return currentFibo;
}
}
static void Main() {
IEnumerator<int> e = Fibo();
for ( int i = 1; i < 10; i++ ) {
// Let's the producer do its job.
e.MoveNext();
// Let's consumme.
System.Console.WriteLine( e.Current );
}
}
}
Copyright Patrick Smacchia 2006 2007
|