デリゲート配列からデリゲート関数を呼び出す実験をしています。デリゲートの配列を作成できましたが、デリゲートを呼び出すにはどうすればよいですか?
public delegate void pd();
public static class MyClass
{
static void p1()
{
//...
}
static void p2 ()
{
//...
}
//...
static pd[] delegates = new pd[] {
new pd( MyClass.p1 ),
new pd( MyClass.p2)
/* ... */
};
}
public class MainClass
{
static void Main()
{
// Call pd[0]
// Call pd[1]
}
}
編集: 配列の理由は、必要に応じてインデックスでデリゲート関数を呼び出す必要があるためです。イベントに応答して実行されるわけではありません。配列 (デリゲート) の名前ではなく pd[] 型を使用してデリゲート関数を実行しようとしたため、コードに重大な (ばかげた) エラーが表示されます。