同名、不同參數清單 (型別/個數/順序):
static int Add(int a, int b) => a + b;
static string Add(string a, string b) => a + b;
Add(111, 222); // 333
Add("111", "222"); // "111222"
將方法作為值傳遞、儲存、組合:
delegate double BinaryOp(double x, double y);
static double Add(double a, double b) => a + b;
static double Sub(double a, double b) => a - b;
static double Mul(double a, double b) => a * b;
static double Div(double a, double b) => a / b;
static void Main()
{
BinaryOp op = Add; // 方法群組轉換
Console.WriteLine(op(3, 2)); // 5
op = Sub; Console.WriteLine(op(3, 2)); // 1
op = Mul; Console.WriteLine(op(3, 2)); // 6
op = Div; Console.WriteLine(op(3, 2)); // 1.5
}
呼叫非受控 DLL (如 Win32 API):
using System.Runtime.InteropServices;
class Native
{
[DllImport("User32.dll")]
public static extern int MessageBox(int hWnd, string text, string caption, int type);
}
static void Main()
{
Native.MessageBox(0, "Visual Studio 2008!", "資訊", 0);
}