Tôi đang sử dụng C#.Làm cách nào để bạn khai báo nội dòng của đại biểu được ủy quyền?
Vì vậy, tôi có một đối tượng có một số trường, không quan trọng gì. Tôi có một danh sách chung của các đối tượng này.
List<MyObject> myObjects = new List<MyObject>();
myObjects.Add(myObject1);
myObjects.Add(myObject2);
myObjects.Add(myObject3);
Vì vậy, tôi muốn xóa đối tượng khỏi danh sách của mình dựa trên một số tiêu chí. Ví dụ: myObject.X >= 10.
Tôi muốn sử dụng phương thức RemoveAll(Predicate<T> match)
để thực hiện việc này. Tôi biết tôi có thể xác định một đại biểu có thể được chuyển vào RemoveAll, nhưng tôi muốn biết cách xác định nội tuyến này với một đại biểu ẩn danh, thay vì tạo một loạt các hàm đại biểu chỉ được sử dụng ở một nơi.
Tại sao VB nên muốn đại biểu vô danh khi nó có lambdas? Và có, phiên bản tiếp theo sẽ có nhiều dòng lambdas và lambdas không trả về một giá trị (= 'Sub' s). –
Vì những lý do bạn vừa nêu - các câu lệnh nhiều dòng và các hàm không trả về một giá trị. Tốt để biết nó sẽ có trong phiên bản tiếp theo, nhưng C# đã có nó từ năm 2005. –