基本上:
public delegate void RecvCommandHandler (ChatApplication sender, byte[] content);
event RecvCommandHandler[] commands = new RecvCommandHandler[255];
我想为每个命令编号激活一个不同的方法/函数,但我确实不确定语法。我该怎么做?
我想这次我只会带上一系列代表,但这个问题还是很有趣的。
最佳答案
实际上并没有一个事件数组的概念——这就像在谈论一个属性数组。事件实际上只是允许您订阅和取消订阅处理程序的方法。如果你需要通过索引来实现这一点,我建议你有两种方法。(AddCommandHandler(int, RecvCommandHandler)
和RemoveCommandHandler(int, RecvCommandHandler)
)。当然,这不支持正常的事件处理语法糖,但我不认为有很多其他选择。