public class TestAnonMethod{public static void Main(){Action<string> messageTarget;if (Environment.GetCommandLineArgs().Length > 1)messageTarget = delegate(string s) { ShowWindowsMessage(s); };elsemessageTarget = delegate(string s) { Console.WriteLine(s); };messageTarget("Hello, World!");}private static void ShowWindowsMessage(string message){MessageBox.Show(message);}}
1 回答

江戶川亂折騰
TA貢獻1851條經驗 獲得超5個贊
確實是畫蛇添足,看我寫的
static void Main( string [] args) { Action< string > messageTarget; if (Environment.GetCommandLineArgs().Length > 1) //messageTarget = ShowWindowsMessage;//第一種,用定義的方法名 messageTarget = (x) => Console.WriteLine( "匿名委托" + x); //第二種 else messageTarget = delegate ( string s) { Console.WriteLine(s); }; messageTarget( "Hello, World!" ); Console.ReadLine(); } private static void ShowWindowsMessage( string message) { Console.WriteLine( "最好加上標識以區別于參數為0" + message); } |
- 1 回答
- 0 關注
- 105 瀏覽
添加回答
舉報
0/150
提交
取消