【发布时间】:2010-11-23 14:49:25
【问题描述】:
我在 Microsoft 实践测试中遇到了这个问题,我很困惑。问题来了:
以下哪个 C# 代码示例 是引发事件的正确方法, 假设警报事件,则 AlarmEventArgs 类和 AlarmEventHandler 委托已 宣布?
这是他们提供的“正确”答案:
AlarmEventArgs e = new AlarmEventArgs(1, 2);
AlarmEventHandler handler = Alarm;
if (handler != null)
{
handler(this, e);
}
但是,还有另一个似乎是正确的答案。
AlarmEventArgs e = new AlarmEventArgs(1, 2);
if (Alarm!= null)
{
Alarm (this, e);
}
就我个人而言,总是使用第二种方法。它工作得很好。谁能告诉我为什么我应该使用第一种方法而不是第二种方法?
【问题讨论】: