void Start() { EnumNum n = EnumNum.Num3; // 0byte Profiler.BeginSample("cast () enum -> int"); int i = (int)n; Profiler.EndSample(); // 40byte Profiler.BeginSample("cast Convert.ToInt32 enum -> int"); i = System.Convert.ToInt32(n); Profiler.EndSample(); // 40byte Profiler.BeginSample("cast Enum.ToObject int -> enum"); n = (EnumNum)System.Enum.ToObject(typeof(EnumNum), i); Profiler.EndSample(); // 0byte Profiler.BeginSample("cast () int -> enum"); n = (EnumNum)i; Profiler.EndSample(); // 20byte Profiler.BeginSample("cast () int -> object"); object o = i; Profiler.EndSample(); // 0byte Profiler.BeginSample("cast () object -> int"); i = (int)o; Profiler.EndSample(); }
void Start() { EnumNum n = EnumNum.Num3; // 0byte Profiler.BeginSample("cast () enum -> int"); int i = (int)n; Profiler.EndSample(); // 40byte Profiler.BeginSample("cast Convert.ToInt32 enum -> int"); i = System.Convert.ToInt32(n); Profiler.EndSample(); // 20byte Profiler.BeginSample("cast Enum.ToObject int -> enum"); n = (EnumNum)System.Enum.ToObject(typeof(EnumNum), i); Profiler.EndSample(); // 0byte Profiler.BeginSample("cast () int -> enum"); n = (EnumNum)i; Profiler.EndSample(); // 20byte Profiler.BeginSample("cast () int -> object"); object o = i; Profiler.EndSample(); // 0byte Profiler.BeginSample("cast () object -> int"); i = (int)o; Profiler.EndSample(); // 24byte Profiler.BeginSample("cast () long -> object"); long l = 1000; o = l; Profiler.EndSample(); int[] array = new int[100]; for (int k = 0; k < array.Length; k++) { array[k] = k; } Profiler.BeginSample("lamda 4"); for (int k = 0; k < 100; k++) { ForEach(array, x => x * 2); } Profiler.EndSample(); // 112byte { Profiler.BeginSample("delegate"); Func <int, int> func = Hoge; Profiler.EndSample(); } // 48byte { Profiler.BeginSample("nullable"); int?x = null; if (x == null) { x = 10; } Profiler.EndSample(); } // 0byte { Profiler.BeginSample("nullable 2"); int?x = null; if (x == null) { x = 10; } Profiler.EndSample(); } }