C# 函数指针

利用托管来实现

private void button2_Click(object sender, EventArgs e)
{
	n++;
	TTAdd(list, testFunc);
}
private void button3_Click(object sender, EventArgs e)
{
    TTDo(list);
}
public delegate void voidFuncDeleg();
List list = new List();
int n = 0;
void testFunc()
{
    MessageBox.Show(n.ToString());
}
void TTAdd(List list, voidFuncDeleg func)
{
    for (int i = 0; i < list.Count; i++)
    {
		if (list[i] == func)
			return;
    }
    list.Add(func);
}
void TTDo(List list)
{
    while (list.Count > 0)
    {
		list[0]();
		list.RemoveAt(0);
    }
}

你可能感兴趣的:(C#,c#,开发语言)