Практическая работа №15. Реализация конструкторов, дружественных функций и перегрузки операторов класса.
Цель: изучение принципов программирования конструкторов, дружественных функций и перегрузки операторов классов в языке С++.
Оборудование: ПК.
Задание:
-
Расширить объявление класса, предложенное в практической работе №14, в соответствии с постановкой задачи.
-
-
Выполнить отладку программы.
-
Протестировать работу программы.
-
Оформить отчет, который должен содержать:
-
тему;
-
цель;
-
оборудование;
-
задание;
-
исходный код программы;
-
результаты работы программ;
-
вывод.
Постановка задачи
-
Добавить объявления трёх конструкторов в соответствии с комментариями:
-
// Постусловие: баланс счета установлен равным $dоllаrs.cеnts; // процентная ставка задана равной значению аргумента rаtе.
-
// Постусловие: баланс счета установлен равным $dоllаrs.00; // процентная ставка установлена равной значению аргумента rаtе.
-
// Постусловие: баланс счета установлен равным $0.00; // процентная ставка установлена равной значению 0.01% //конструктор по умолчанию.
Добавить объявления дружественных функций: для сравнения балансов счетов и для сравнения процентных ставок.
Добавить объявление дружественного перегруженного оператора + для сложения балансов двух счетов с установкой процентной ставки по умолчанию (0.01%).
Реализовать определение функций, перечисленных в пунктах 1, 2 и 3.
В функции mаin:
-
инициализировать первый вклад: баланс – 190 долларов 50 центов, процентная ставка – 3,5%;
-
инициализировать второй вклад: баланс – 200 долларов 00 центов, процентная ставка – 3,6%;
-
сформировать третий вклад сложением балансов первого и второго вкладов с установкой процентной ставки по умолчанию.
-
вывести на экран баланс и процентную ставку по счету с наибольшим балансом;
-
вывести на экран баланс и процентную ставку по счету с наибольшей процентной ставкой.
Контрольные вопросы:
-
Что такое класс?
-
Как объявить класс?
-
Как описать метод класса?
-
Как объявить объекты?
-
Как инициализировать объект?
-
Как обратиться к полям класса?
-
Как выполняется операция присваивания для объектов?
-
Что такое конструктор?
-
Как объявить конструктор?
-
Что такое дружественная функция?
-
Как объявить дружественную функцию?
-
Как определить дружественную функцию?
-
Как выполнить перегрузку оператора?
-
Как выполняются операторы, использованные в программе?