C# 2.0 有一个简洁的特性,称为匿名函数。这主要用于事件:
Button.Click += delegate(System.Object o, System.EventArgs e)
{ System.Windows.Forms.MessageBox.Show("Click!"); };
现在,假设 Button 是一个静态成员,那么向它添加委托将被视为非托管资源。通常,我必须在重新注册之前取消注册处理程序。这是 GUI 编程的一个非常常见的用例。
匿名函数的准则是什么?框架会自动注销吗?如果有,什么时候?