Action<T> 委托

using System;
using System.Windows.Forms;

delegate void DisplayMessage(string message);

public class TestCustomDelegate
{
public static void Main()
{
DisplayMessage messageTarget;

if (Environment.GetCommandLineArgs().Length > 1)
messageTarget = ShowWindowsMessage;
else
messageTarget = Console.WriteLine;

messageTarget("Hello, World!");
}

private static void ShowWindowsMessage(string message)
{
MessageBox.Show(message);
}
}




using System;
using System.Windows.Forms;

public class TestAction1
{
public static void Main()
{
Action<string> messageTarget;

if (Environment.GetCommandLineArgs().Length > 1)
messageTarget = ShowWindowsMessage;
else
messageTarget = Console.WriteLine;

messageTarget("Hello, World!");
}

private static void ShowWindowsMessage(string message)
{
MessageBox.Show(message);
}
}


原文地址:https://www.cnblogs.com/baobao2010/p/2246720.html