Объектно-ориентированное программирование на C++. Андрианова А.А - 57 стр.

UptoLike

Объектно-ориентированное программирование на С++
умолчанию устанавливается равным нулю (это указывается при
объявлении метода в классе).
// метод инициализации данных студента
void Student::Init(char* f, int d, int m, int y, int ntb,
double mark)
{
Fill(f, d, m, y, ntb, mark);
}
Остальные методы в комментариях не нуждаются и будут приведены
далее.
Разберем методы класса Group. Сначала опишем методы
добавления студента в группу. Было отмечено, что добавить студента в
группу можно по существующим данным о нем или при вводе
информации о новом студенте. Поэтому класс Group содержит два
перегруженных метода с одинаковым именем AddStudent() и
различными списками формальных параметров (без параметров и с
объектом класса Student).
В случае ввода информации о новом студенте требуется выполнить
проверку уникальности номера зачетной книжки. Для этого можно
воспользоваться методом поиска студента по номеру зачетной книжки
FindStudent(). Если номер зачетной книжки повторяется, требуется
ввести другой номер. Ввод некорректной даты рождения отслеживается в
методе Fill() заполнения свойств объекта класса Student
посредством генерации исключения. Обработчик данного исключения
вновь запрашивает ввод корректной даты рождения.
В случае, когда группа уже заполнена, метод AddStudent()
генерирует собственное исключение. Ввод информации о новом студенте
осуществляется, если группа неукомплектована.
// метод добавления студента в группу – информация о
новом // студенте вводится с клавиатуры
void Group::AddStudent()
{
if(count == 20)
throw "Группа заполнена";
char f[100];
cout << "Введите фамилию, имя и отчество студента: ";
cin.getline(f, 100);
int ntb;
Student temp;
57
                           Объектно-ориентированное программирование на С++
умолчанию устанавливается      равным   нулю     (это   указывается    при
объявлении метода в классе).
     // метод инициализации данных студента
     void Student::Init(char* f, int d, int m, int y, int ntb,
                                                 double mark)
     {
          Fill(f, d, m, y, ntb, mark);
     }

    Остальные методы в комментариях не нуждаются и будут приведены
далее.
    Разберем методы класса Group. Сначала опишем методы
добавления студента в группу. Было отмечено, что добавить студента в
группу можно по существующим данным о нем или при вводе
информации о новом студенте. Поэтому класс Group содержит два
перегруженных метода с одинаковым именем AddStudent() и
различными списками формальных параметров (без параметров и с
объектом класса Student).
    В случае ввода информации о новом студенте требуется выполнить
проверку уникальности номера зачетной книжки. Для этого можно
воспользоваться методом поиска студента по номеру зачетной книжки
FindStudent(). Если номер зачетной книжки повторяется, требуется
ввести другой номер. Ввод некорректной даты рождения отслеживается в
методе Fill() заполнения свойств объекта класса Student
посредством генерации исключения. Обработчик данного исключения
вновь запрашивает ввод корректной даты рождения.
    В случае, когда группа уже заполнена, метод AddStudent()
генерирует собственное исключение. Ввод информации о новом студенте
осуществляется, если группа неукомплектована.

     // метод добавления студента в группу – информация о
     новом // студенте вводится с клавиатуры
     void Group::AddStudent()
     {
          if(count == 20)
               throw "Группа заполнена";
          char f[100];
          cout << "Введите фамилию, имя и отчество студента: ";
          cin.getline(f, 100);
          int ntb;
          Student temp;
                                                                         57