using System;
// Delegateを定義
delegate void SampleDelegate();
class SampleClass
{
public event SampleDelegate even = () => { };
public event SampleDelegate uneven = () => { };
public void printOut()
{
for (int i = 0; i < 10; i++)
{
Console.Write(i);
if (i % 2 == 0)
{
even();
}
else if (i % 2 == 1)
{
uneven();
}
Console.WriteLine();
}
}
}
class MainClass
{
static void Main()
{
// SampleClassをインスタンス化
SampleClass sample = new SampleClass();
// ラムダ式でEventを登録
sample.even += () => Console.Write(":Even");
sample.uneven += () => Console.Write(":Uneven");
/* 出力値
* 0:Even
* 1:Uneven
* 2:Even
* 3:Uneven
* 4:Even
* 5:Unevven
* 6:Even
* 7:Uneven
* 8:Even
* 9:Uneven
*/
sample.printOut();
}
}
0 コメント:
コメントを投稿