4
using System;
static class Program
{
static event Action A = delegate { };
static event Action B = delegate { };
static void Main()
{
A += B;
B +=()=>Console.WriteLine("yeah");
A.Invoke();
}
}
这不会打印任何内容,但是如果我交换Main的前两行,它会打印任何内容。在.NET中为什么事件连接顺序是这样的?
很好的答案 - 也许就术语而言,最好说“代表是不可变的” - *事件*只是*访问者*(添加/删除),所以不可变性的概念并不适用。 –