59. List<int> list = new List<int>();
foreach (var i in list)
{
// Do something
}
IList<int> list = new List<int>();
foreach (var i in list)
{
// Do something
}
60. public Enumerator GetEnumerator()
{
// Enumerator is a struct
return new Enumerator(this);
}
IEnumerator<T> IEnumerable<T>.GetEnumerator()
{
return new Enumerator(this); // boxing
}
IEnumerator IEnumerable.GetEnumerator()
{
return new Enumerator(this); // boxing
}
62. Var c = new Cucumber();
c.Dispose();
IL_0000: ldloca.s c
IL_0002: initobj Cucumber
IL_0008: ldloca.s c
IL_000a: call instance void Cucumber::Dispose()
68. var d = 42m;
var decimalProxy =
*((DecimalProxy*)(&d));
var flags = decimalProxy.flags;
var lo = decimalProxy.lo;
var mid = decimalProxy.mid;
var hi = decimalProxy.hi;
// Enjoy your flags-lo-mid-high!