Шрифт:
Функции, реализующие операции
Задание
Это задание сводится к запуску последовательности версий класса
Проверка корректности даты может быть очень простой. В любом случае не допускайте, чтобы месяц выходил за пределы диапазона [1,12], а день месяца — за пределы диапазона [1,31]. Проверьте каждую версию хотя бы на одной некорректной дате, например (2009, 13, –5).
1. Версия из раздела 9.4.1.
2. Версия из раздела 9.4.2.
3. Версия из раздела 9.4.3.
4. Версия из раздела 9.7.1.
5. Версия из раздела 9.7.4.
Контрольные вопросы
1. Какие две части класса описаны в главе?
2. В чем заключается разница между интерфейсом и реализацией класса?
3. Какие ограничения и проблемы, связанные со структурой
4. Почему в классе
5. Что такое инвариант? Приведите примеры.
6. Когда функции следует размещать в определении класса, а когда — за его пределами? Почему?
7. Когда следует применять перегрузку оператора? Перечислите операторы, которые вы хотели бы перегрузить (укажите причину).