基本上:

public delegate void RecvCommandHandler (ChatApplication sender, byte[] content);
event RecvCommandHandler[] commands = new RecvCommandHandler[255];

我想为每个命令编号激活一个不同的方法/函数,但我确实不确定语法。我该怎么做?
我想这次我只会带上一系列代表,但这个问题还是很有趣的。

最佳答案

实际上并没有一个事件数组的概念——这就像在谈论一个属性数组。事件实际上只是允许您订阅和取消订阅处理程序的方法。如果你需要通过索引来实现这一点,我建议你有两种方法。(AddCommandHandler(int, RecvCommandHandler)RemoveCommandHandler(int, RecvCommandHandler))。当然,这不支持正常的事件处理语法糖,但我不认为有很多其他选择。

09-18 12:06