システムは、手数料の楽しさとアクションデリゲートを提供します

アクションタイプの方法は、0-16パラメータを委任ますが、戻り値を持つことができません。

タイプのFuncパラメータを委任することができる方法は、戻り値を持っている必要があります。

 

使用Actoin

使用したシステムを、
 使用System.Collections.Genericを、
 使用してSystem.Linqのを、
 使用System.Textのを、
 使用System.Threading.Tasks; 

名前空間イベント
{ 
    クラスプログラム
    { 
        静的 ボイドメイン(文字列[]引数)
        { 
            アクション < INT >デルM2 = ; // 関数パラメータデリゲート 
            デル(10 ); 
            アクションDEL1 = M1; // 関数のパラメータは委任しない
            DEL1(); 
            アクション < int型INT > DEL2 = M3; // 関数デリゲート2つのパラメータ 
            DEL2(1020 ); 
            Console.ReadKey(); 
        } 
        静的  ボイドM1()
        { 
            Console.WriteLineを(" M1 " ); 
        } 
        静的 ボイド M2(INT A)
        { 
            Console.WriteLineを(A); 
        } 
        静的 ボイド M3(int型 A、int型B)
        { 
            Console.WriteLineを(" {0}、{} 1 "、A、B)。
        } 
    } 
}

Func <パラメータ、戻り値>デリゲートの使用は返すことがあります

使用したシステムを、
 使用System.Collections.Generic;
 使用System.Linqの、
 使用System.Textのを、
 使用System.Threading.Tasks; 

名前空間のイベント
{ 
    クラスプログラム
    { 
        静的 ボイドメイン(文字列[]引数)
        { 
           
            のFunc < int型 > = M1楽しいです; // int型の値を返すパラメータを指定せずに方法を委任する
            )楽しい(; 
            のFunc < int型文字列 > = M2のFUN1; //は、string型の戻り値を委託、INTパラメータメソッド 
            FUN1を(29); 
            Console.ReadKey(); 
        } 
        静的  int型  M1()
        { 
           
            返す 10 
        } 
        静的 文字列   M2(INT A)
        { 
           
            戻り " ストリング" 
        } 
       
    } 
}

 

おすすめ

転載: www.cnblogs.com/zhangyang4674/p/11469624.html
おすすめ