Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Car
- {
- public string Name { get; set; }
- public Car(string name)
- {
- Name = name;
- }
- public event EventHandler Started;
- public void Start()
- {
- if (Started != null)
- Started(this, EventArgs.Empty);
- }
- }
- class Driver
- {
- public string Name { get; set; }
- public Driver(string name)
- {
- Name = name;
- }
- }
- static void Main(string[] args)
- {
- var fomenko = new Driver("Фоменко");
- var shumaher = new Driver("Шумахер");
- var vasya = new Driver("Вася");
- Driver[] drivers = new Driver[]
- {
- fomenko, shumaher, vasya
- };
- List<Car> cars = new List<Car>();
- foreach (var driver in drivers)
- {
- var car = new Car
- (
- driver == fomenko ?
- "Маруся"
- : driver == shumaher ?
- "Ф1"
- : "Запорожец"
- );
- car.Started += delegate(object o, EventArgs ea)
- {
- Console.WriteLine("Стартовала машина {0} с пилотом {1}",
- car.Name, driver.Name);
- };
- cars.Add(car);
- }
- foreach (var car in cars)
- {
- car.Start();
- }
- Console.ReadKey();
- }
- Стартовала машина Маруся с пилотом Вася
- Стартовала машина Ф1 с пилотом Вася
- Стартовала машина Запорожец с пилотом Вася
- Стартовала машина Маруся с пилотом Фоменко
- Стартовала машина Ф1 с пилотом Шумахер
- Стартовала машина Запорожец с пилотом Вася
- foreach (var driver in ...) {
- var driver2 = driver;
- //...
- }
- drivers.ForEach(driver => {
- //...
- });
- foreach (var driver in drivers)
- {
- // тело цикла
- }
- using (var en = drivers.GetEnumerator())
- {
- Driver driver; // вне цикла
- while (en.MoveNext())
- {
- driver = en.Current;
- // тело цикла
- }
- }
- using (var en = drivers.GetEnumerator())
- {
- while (en.MoveNext())
- {
- Driver driver = en.Current; // внутри цикла
- // тело цикла
- }
- }
Add Comment
Please, Sign In to add comment