Answer Posted / banaja
public class ExampleIterator : IEnumerable {
public IEnumerator GetEnumerator() {
yield return 1;
}
}
The class ExampleIterator implements the IEnumerable
interface, which requires the GetEnumerator method to be
implemented. The GetEnumerator method returns an
IEnumerator instance. In the implementation of
GetEnumerator, the value 1 is returned rather than an
IEnumerator interface instance. This is odd, because how
can a value type be returned when a reference type is
expected? The magic is the yield keyword, which provides
the missing code in the form of generated IL.
The yield keyword is a compiler directive that generates a
very large chunk of IL code. Using ILDASM.exe it is
possible to reverse engineer what the compiler generated
Is This Answer Correct ? | 3 Yes | 0 No |
Post New Answer View All Answers
What is the advantage of .net?
What is a strong name in .net?
How many namespaces are in .net version 1.1?
Using activex control in .net?
State the various features present in .NET?
Do I have any control over the garbage collection algorithm?
How to create properties and methods using controls?
What is garbage collection and how it works ?
What does jit do?
What is the difference between function and stored procedure?
What is static constructor, when it will be fired?
What is a web service in .net?
What are the advantages of .net core?
Difference between dispose and finallize method?
Explain how garbage collection works?