使用下面的代码:
private void anEvent(object sender, EventArgs e) {
//some code
}
以下内容之间有什么不同?
[object].[event] += anEvent;
//and
[object].[event] += new EventHandler(anEvent);
更新
显然,two...the没有区别,前者只是后者的句法糖。
发布于 2009-02-15 10:59:03
这是没有区别的。在你的第一个例子中,编译器会自动推断出你想要实例化的委托。在第二个示例中,显式定义委托。
委托推理是在C# 2.0中添加的。因此,对于C# 1.0项目,第二个示例是您唯一的选择。对于2.0项目,使用推理的第一个示例是我更喜欢在代码库中使用和看到的-因为它更简洁。
发布于 2009-02-15 11:01:23
[object].[event] += anEvent;
只是句法上的糖-
[object].[event] += new EventHandler(anEvent);
发布于 2009-02-15 10:58:41
我不认为有什么不同。编译器将第一个转换为第二个。
https://stackoverflow.com/questions/550703
复制相似问题