Sự cố với mã của bạn là bạn đang cố chỉ định một cá thể làm đối số kiểu cho Danh sách.
Action<int> method
là một ví dụ, trong khi Action<int>
là một loại.
Là một áp phích khác đề cập đến, bạn chỉ cần khai báo loại danh sách là Action<int>
, tức là chỉ với thông số loại.
ví dụ:
var myNum = 5;
var myops = new List<Action<int>>();
myops.Add(j => j++);
myops.Add(j => j++);
foreach(var method in myops)
{
Console.WriteLine(method(myNum));
}
// Frowned upon, but fun syntax
myops.Each(method => method(myNum));
Nếu bạn cần một chút linh hoạt hơn một đại biểu cụ thể, hãy thử xem đại biểu được xác định trong câu trả lời cho câu hỏi này: http://stackoverflow.com/questions/1184329/function-pointers -in-c –