Практикум по курсу "Объектно-ориентированное программирование" на языке C#. Андрианова А.А - 106 стр.

UptoLike

105
// свойства для получения доступа к полям заказа
public Tovar tovar
{
get { return t; }
}
public int Count
{
get { return count; }
set { count = value; }
}
// операция получения строкового представления заказа
static public implicit operator string(Zakaz ob)
{
return ""+ob.t.Category+"!"+ob.t.Name + "!" + ob.count;
}
}
Поступившие заказы фиксируются в списке заказов, для которого
имеется соответствующий класс. Список текущих заказов сохраняется и
загружается в текстовый файл:
// класс для описания списка заказов
class ListZakaz
{
List<Zakaz> list;
// конструктор, считывающий информацию
// о невыполненных заказах из файла
public ListZakaz(string file, PriceList l)
{
list = new List<Zakaz>();
StreamReader sr = new StreamReader(file);
string str;
while ((str = sr.ReadLine()) != null)
{
string[] s = str.Split('!');
Tovar t = l.GetTovar(s[0],s[1]);
Zakaz z = new Zakaz(t,int.Parse(s[2]));
}
sr.Close();
}
. . .
}
Новый заказ добавляется в список с помощью метода AddZakaz().
Производится обслуживание не конкретного заказа, а сразу нескольких
заказов на конкретный товар. В функции RemoveZakaz() с помощью
          // свойства для получения доступа к полям заказа
          public Tovar tovar
          {
             get { return t; }
          }

          public int Count
          {
             get { return count; }
             set { count = value; }
          }

          // операция получения строкового представления заказа
          static public implicit operator string(Zakaz ob)
          {
             return ""+ob.t.Category+"!"+ob.t.Name + "!" + ob.count;
          }
      }

     Поступившие заказы фиксируются в списке заказов, для которого
имеется соответствующий класс. Список текущих заказов сохраняется и
загружается в текстовый файл:

      // класс для описания списка заказов
      class ListZakaz
      {
         List list;

           // конструктор, считывающий информацию
           // о невыполненных заказах из файла
           public ListZakaz(string file, PriceList l)
           {
              list = new List();
              StreamReader sr = new StreamReader(file);
              string str;
              while ((str = sr.ReadLine()) != null)
              {
                 string[] s = str.Split('!');
                 Tovar t = l.GetTovar(s[0],s[1]);
                 Zakaz z = new Zakaz(t,int.Parse(s[2]));
              }
              sr.Close();
           }
          . . .
      }

      Новый заказ добавляется в список с помощью метода AddZakaz().
Производится обслуживание не конкретного заказа, а сразу нескольких
заказов на конкретный товар. В функции RemoveZakaz() с помощью

105