15 { if (h - w > 100.0) Console.WriteLine(n + " худой");
16 else Console.WriteLine(n + " полный");
17 }
18 }
В определении структурного типа Person (стр.01-05) новым является только использование слова public в описании переменных. Его роль мы выясним позже.
Класс Program условно можно назвать главным классом, поскольку он содержит метод Main, с которого и начнется выполнение программы.
В методе Main описываются две структуры (переменные структурного типа). В отличие от языка Си, в описании структур ключевое слово struct не указывается. Таким образом, переменные me и you являются переменными типа Person.
Далее с помощью операции доступа к полю (операции точка) и операторов присваивания происходит заполнение переменных me и you информационным содержимым (стр.09-10).
Наконец, в стр. 11 и 12 вызывается метод PersonAnalyze класса Program сначала с данными структуры me, а затем с данными структуры you. Заметим, что метод PersonAnalyze, как и метод Main описан как static. На экране должен появиться следующий результат:
Это я полный
Это ты худой
Дальнейшее использование структурного типа повышает уровень Вашего программного кода. Например, применение параметров структурного типа делает функции (методы) более естественными:
static void PersonAnalyze(Person p)
{ if (p.Height-p.Weight> 100.0)
Console.WriteLine(p.Name + " худой");
else
Console.WriteLine(p.Name + " полный");
}
Использование такого метода в Main подчеркивает, что Ваша программа оперирует сущностями предметной области, а не примитивными порциями данных:
PersonAnalyze(me);
PersonAnalyze(you);
В предыдущем примере метод PersonAnalyze имеет довольно слабое отношение к структурному типу Person (только название). Основной причиной этого является размещение метода за пределами структурного типа Person.