首先,我正在阅读一些论坛和MSDN中的帮助,并且所有人都说代理人不能超载.
现在,我希望有这样的东西:
public delegate void OneDelegate();
public delegate void OneDelegate(params object[] a);
public void DoNothing(params object[] a) {}
public void DoSomething() { /* do something */ }
private OneDelegate someFunction;
someFunction = new OneDelegate(DoSomething);
someFunction = new OneDelegate(DoNothing);
Run Code Online (Sandbox Code Playgroud)
所以,就像你知道的那样,你不能这样做,因为OneDelegate只引用第一个而不是第二个.但是,有没有办法做到这一点?或类似的东西?
PS1:我希望拥有任意数量的OneDelegate声明,而不仅仅是一两个声明.