基本上,我已經看到了這個使用的所有經常:爲什麼在調用它之前爲事件分配一個處理程序?
public event MyEventHandler MyEvent;
private void SomeFunction()
{
MyEventHandler handler = this.MyEvent;
if (handler != null)
{
handler(this, new MyEventArgs());
}
}
當可以很容易地完成像這樣:
public event MyEventHandler MyEvent;
private void SomeFunction()
{
if (MyEvent != null)
{
MyEvent(this, new MyEventArgs());
}
}
所以,我失去的東西嗎?是否有一些人將事件分配給處理程序,然後提升處理程序而不是事件本身?這只是「最佳做法」嗎?