Tôi có thể gán phương thức M
cho đối tượng d
với loại tham số ít cụ thể hơn, nhưng khi tôi muốn gán một phương thức ẩn danh với cùng chữ ký theo phương thức M
đến d
, tôi gặp lỗi.Không thể gán cho ủy quyền một phương thức ẩn danh có kiểu tham số ít cụ thể
Tại sao lại như vậy?
class derivedEventArgs : EventArgs { }
delegate void newDelegate(object o, derivedEventArgs e);
static void Main(string[] args)
{
newDelegate d = M; // ok
d = (object o, EventArgs e) => { }; // error
}
public static void M(object o, EventArgs e) { }
Bạn chắc chắn có một số quy ước đặt tên thú vị đang diễn ra ở đó ... –