ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 9) онлайн

Конструкторы класса DistSign

Класс DistSign имеет два конструктора, таких же, как и класс Distance. Первый не имеет аргументов, у второго либо два, либо три аргумента. Третий, необязатель- ный, аргумент второго конструктора — это переменная sign, имеющая значение pos или neg. Значением по умолчанию является pos. Эти конструкторы позволя- ют нам определить объекты типа DistSign разными способами.

Оба конструктора в классе DistSign вызывают соответствующие конструкто- ры из класса Distance для установки значений футов и дюймов. Они также уста- навливают значение поля sign. Конструктор без аргументов всегда устанавлива- ет значение поля sign равным pos. Второй конструктор устанавливает значение поля sign как pos, если оно не определено.

Аргументы ft и in, передающиеся из функции main() второму конструктору класса DistSign, просто передаются конструктору класса Distance.

 

18