我想知道如果我这样做会怎么样:
我在想如果我做了这样的事:
class A
{
public MethodA()
{
}
public MethodB()
{
ExternalObject.Click += this.MethodA;
}
public MethodC()
{
ExternalObject.Click -= this.MethodA;
}
}
A a = new A();
a.MethodB();
a.MethodC();
这会起作用吗?我指的是 - MethodA 会被取消订阅 ExternalObject.Click 事件吗?
还有其他相关的问题:
当使用实例方法而不是委托实例时,背后发生了什么?(就像上面那样)
这会导致委托的隐式创建吗?
-=
运算符如何在委托之间执行比较 - 是通过引用还是发生了更复杂的事情?