Na początku stwórzmy klasę, która będzie zawierała pewną wartość.
public class Item { private readonly int _i; public Item(int i) { _i = i; } public override string ToString() { return "I: "+_i; } }
A teraz stwórzmy listę z lazy elementami i te elementy ponumerujemy.
List<Lazy<Item>> lazyList = new List<Lazy<Item>>(); for (int i = 0; i < 10; i++) { lazyList.Add(new Lazy<Item>(() => new Item(i))); } foreach (var lazyItem in lazyList) { Console.WriteLine(lazyItem.Value); }
Jak uruchomimy aplikację to zamiast ponumerowanych elementów, dostajemy obiekty z tą samą wartością.
Brak komentarzy:
Prześlij komentarz