1.了解delegate
delegate可以认为是一种函数的指针,一个delegate类型的实例代表可以代表一个方法,在实际使用中我们可以在不知道方法名称的情况下调用到这个方法。前面说太多可能会使大家变得糊涂,或者摸不着头脑,我举个例子,来详细说明此种类型的用法:
整个例程的代码,是控制台项目.
//代码开始
using System;
namespace ConsoleApp1
{
public delegate string FunctionPointer(string strName);
class Class1
{
[STAThread]
static void Main(string[] args)
{
//
// TODO: 在此处添加代码以启动应用程序
System.Console.WriteLine("Hello World!");
FunctionPointer fpa = new FunctionPointer(aFunction);
FunctionPointer fpb = new FunctionPointer(bFunction);
InvokeMethod(fpa);
InvokeMethod(fpb);
System.Console.ReadLine();
//
}
public static string aFunction(string sNameA)
{
return "aFunction say i'm " + sNameA;
}
public static string bFunction(string sNameB)
{
return "bFunction say i'm " + sNameB;