Программирование на языке высокого уровня. Марапулец Ю.В. - 95 стр.

UptoLike

Составители: 

cout<<fam<<"\t"<<name<<"\t"<<age<<endl;
}
void Man::ManInput()
{
cout<<"Введите фамилию:\t";
cin>>fam;
cout<<"Введите имя:\t";
cin>>name;
cout<<"Введите возраст:\t";
cin>>age;
cout<<"Введите пол (м или ж):\t";
cin>>sex;
}
void main()
{
Man first, second;
cout<<"Программа, использующая классы\n";
first. ManInput();
second. ManInput();
first. ManPrint();
second. ManPrint();
cout<<"\nДля завершения нажмите любую клавишу";
getch();
}
Рассмотрим правила наследования различных методов [8].
Конструкторы не наследуются, поэтому производный класс должен иметь собст-
венные конструкторы. Порядок вызова конструкторов определяется приведенными ниже
правилами:
Если в конструкторе производного класса явный вызов конструктора базового класса
отсутствует, автоматически вызывается конструктор базового класса по умолчанию
(то есть тот, который можно вызвать без параметров).
Для иерархии, состоящей из нескольких уровней, конструкторы базовых классов вы-
зываются начиная с самого верхнего уровня. После этого выполняются конструкто-
ры тех элементов класса, которые являются объектами, в порядке их объявления в
классе, а затем исполняется конструктор класса.
В случае нескольких базовых классов их конструкторы вызываются в порядке объ-
явления.
Не наследуется и
операция присваивания, поэтому ее также требуется явно опре-
делить в порожденном классе. Вызов функций базового класса предпочтительнее копи-
рования фрагментов кода из функций базового класса в функции производного. Кроме
сокращения объема кода, этим достигается упрощение модификации программы: изме-
нения требуется вносить только в одну точку программы, что сокращает количество
возможных ошибок.
Ниже перечислены правила наследования
деструкторов:
Деструкторы не наследуются, и если программист не описал в производном классе
деструктор, он формируется по умолчанию и вызывает деструкторы всех базовых
классов.
В отличие от конструкторов, при написании деструктора производного класса в нем
не требуется явно вызывать деструкторы базовых классов, поскольку это будет сде-
лано автоматически.
95
      cout<>fam;
      cout<<"Введите имя:\t";
      cin>>name;
      cout<<"Введите возраст:\t";
      cin>>age;
      cout<<"Введите пол (м или ж):\t";
      cin>>sex;
}
void main()
{
      Man first, second;
      cout<<"Программа, использующая классы\n";
      first. ManInput();
      second. ManInput();
      first. ManPrint();
      second. ManPrint();
      cout<<"\nДля завершения нажмите любую клавишу";
      getch();
}

     Рассмотрим правила наследования различных методов [8].
     Конструкторы не наследуются, поэтому производный класс должен иметь собст-
венные конструкторы. Порядок вызова конструкторов определяется приведенными ниже
правилами:
• Если в конструкторе производного класса явный вызов конструктора базового класса
   отсутствует, автоматически вызывается конструктор базового класса по умолчанию
   (то есть тот, который можно вызвать без параметров).
• Для иерархии, состоящей из нескольких уровней, конструкторы базовых классов вы-
   зываются начиная с самого верхнего уровня. После этого выполняются конструкто-
   ры тех элементов класса, которые являются объектами, в порядке их объявления в
   классе, а затем исполняется конструктор класса.
• В случае нескольких базовых классов их конструкторы вызываются в порядке объ-
   явления.
     Не наследуется и операция присваивания, поэтому ее также требуется явно опре-
делить в порожденном классе. Вызов функций базового класса предпочтительнее копи-
рования фрагментов кода из функций базового класса в функции производного. Кроме
сокращения объема кода, этим достигается упрощение модификации программы: изме-
нения требуется вносить только в одну точку программы, что сокращает количество
возможных ошибок.
     Ниже перечислены правила наследования деструкторов:
• Деструкторы не наследуются, и если программист не описал в производном классе
   деструктор, он формируется по умолчанию и вызывает деструкторы всех базовых
   классов.
• В отличие от конструкторов, при написании деструктора производного класса в нем
   не требуется явно вызывать деструкторы базовых классов, поскольку это будет сде-
   лано автоматически.


                                        95