using System;
delegate void SampleDelegate(int n,string s);
class MainClass
{
static void printOut1(int n, string s)
{
Console.WriteLine("{0}:{1}", n, s);
}
static void printOut2(int n, string s)
{
Console.WriteLine("{0}:{1}", n + 1, s);
}
static void Main()
{
// SampleDelegate型の変数を宣言、Methodを登録
SampleDelegate sample = printOut1;
// 出力値:1:Sample
sample(1, "Sample");
// printOut2を追加
sample += printOut2;
/* 出力値
* 2:Sample
* 3:Sample */
sample(2, "Sample");
// printOut1を削除
sample -= printOut1;
// 出力値:4:Sample
sample(3, "Sample");
}
}
0 コメント:
コメントを投稿