gpt4 book ai didi

c# - 应该在引发事件的类内部还是外部声明委托(delegate)?

转载 作者:可可西里 更新时间:2023-11-01 07:52:25 25 4
gpt4 key购买 nike

我见过各种事件处理的例子。这是一个:Event Sample .

有时我看到委托(delegate)在将引发事件的类外部声明(如上面的链接所示),有时在内部(认为它应该被声明)。

对我来说,在将引发事件的类 中声明事件更有意义。原因是该类将声明的事件实际上只是辅助方法等的一些糖衣,它们实际上是在对委托(delegate)进行添加、减去和调用等操作。

有什么最佳实践吗?是否有时您想在外部声明委托(delegate),而有时又想在内部声明委托(delegate)?如果是这样,应该如何决定要做什么?

最佳答案

通常,现在您会创建自己的派生自 EventArgs 的类, 然后只使用 EventHandler<TEventArgs> - 无需创建单独的委托(delegate)类型。所以而不是 AlarmEventHandler ,你会使用 EventHandler<AlarmEventArgs> . EventArgs -派生类通常应该是顶级的(即非嵌套的)。

关于c# - 应该在引发事件的类内部还是外部声明委托(delegate)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5288252/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com