ジェネリックなデリゲートの使い方
下記はList
void MyAction(int x) { Console.WriteLine(x); } int[] data = { 9, 2, 12, 17, 8, 1, 19 }; Listlist = new List (data); // 使い方その1 Action myActionDelegate = new Action (MyAction); list.ForEach(myActionDelegate); // 使い方その2 Action myActionDelegate = MyAction; list.ForEach(myActionDelegate); // 使い方その3 list.ForEach(MyAction); // 使い方その4 list.ForEach(Console.WriteLine); // 使い方その5 list.ForEach(delegate(int x) { Console.WriteLine(x); } );
使い方その4は一瞬、ん?とか思ってしまうが確かにできる・・・。
参照
http://www.atmarkit.co.jp/fdotnet/special/generics02/generics02_01.html