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 关注
- 88 浏览
添加回答
举报
0/150
提交
取消