Создание унарного оператора инкремента или декремента
Унарный префиксный оператор инкремента (++) может быть создан в пределах объяв ления класса с использованием следующего синтаксиса:
Унарный оператор инкремента (префиксный) Dates operator ++ ()
{
код реализации оператора
return *this;
постфиксного оператора инкремента (++), напротив, возвращаемое значение отлича ется от входного параметра (который используется не всегда):
304 ЗАНЯТИЕ 12. Типы операторов и их перегрузка
Date operator ++ (int)
{
Сохранить копию текущего состояния объекта, прежде чем увеличить
значение дня
Date Copy (*this);
код реализации оператора (осуществляющий инкремент этого объекта)
Возвратить состояние прежде, чем будет выполнен инкремент
return Сору;
}
Синтаксис у префиксных и постфиксных операторов декремента такой же, как и у операторов инкремента, только объявление содержит — там, где у инкремента ++. Ли стинг 12.1 демонстрирует простой класс D ate, позволяющий увеличивать даты, используя оператор (++).
Л И СТ И Н Г 1 2 .1 . Календарный класс, содержащий день, месяц
год, а также допускающий инкремент и декремент__________________________________________
#include
Do'stlaringiz bilan baham: |