2010年1月26日火曜日

delegateキーワードを使用してDelegateを定義して、Delegate型の変数を宣言し、匿名メソッドを登録したり、同様の処理をStatement式のラムダを利用して登録して実際に使用して処理結果を確認してみる。

using System;


// Delegateを定義
delegate void SampleDelegate(int n,string s);


class MainClass
{
    static void Main()
    {
        // SampleDelegate型の変数を宣言
        SampleDelegate sample;


        // 匿名メソッドを利用してメソッドを登録
        sample = delegate(int n, string s)
        { Console.WriteLine("{0}:{1}", n, s); };


        /* Delegateを介して匿名メソッドを呼び出す
         * 出力値:1:Sample */
        sample(1, "Sample1");


        // 匿名メソッドと同様の処理をラムダ式で登録
        sample = (n, s) => 
        { Console.WriteLine("{0}:{1}", n, s); };


        // 出力値:2:Sample2
        sample(2, "Sample2");
    }
}

0 コメント:

コメントを投稿