C#动作/代表样式问题

前端之家收集整理的这篇文章主要介绍了C#动作/代表样式问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
什么被认为是更好的风格的事件定义:
public event Action<object,double> OnNumberChanged;

要么

public delegate void DNumberChanged(object sender,double number);
public event DNumberChanged OnNumberChanged;

第一个需要较少的打字,但代表一个给出参数的名称.当我打这个,我认为第2号是赢家,但我可能是错的.

编辑:不同的(第三)方法是赢家.参见下文.

解决方法

1或2.第三个选项是获胜者
public event EventHandler<NumberChangedEventArgs> NumberChanged;

您正在打破C#中开发的一些风格指南,例如使用不扩展EventArgs的事件参数的类型.

是的,你可以这样做,因为编译器不在乎.但是,阅读代码的人会做一个WTF.

猜你在找的C#相关文章