Программирование и основы алгоритмизации. Макаров В.Л. - 106 стр.

UptoLike

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

106
//Простое определение класса Time
class Time {
public:
Time();
void setTime (int, int, int);
void printMilitary();
void printStandart();
private:
int hour; // 0-23
int minute; // 0-59
int second; // 0-59
};
Рис. 16.2
Остальные части определения классановые. Метки public: (открытая) и
private: (закрытая) называются спецификаторами доступа к элементам. Лю-
бые данные и функции-элементы, объявленные после спецификатора доступа
public:, доступны при любом обращении программы к объекту класса Time, а
эти же элементы, объявленные
после спецификатора доступа private:, доступ-
ны только функциям-элементам этого класса. Спецификаторы доступа к эле-
ментам всегда заканчиваются двоеточием и могут появляться в определении
класса много раз и в любом порядке. Определение класса (рис.16.2) содержит
после спецификатора доступа public: прототипы следующих четырёх функций
элементов: Time, setTime, printMilitary, printStandart. Этооткрытые функ-
ции
-элементы или открытый интерфейс услуг класса. Эти функции будут ис-
пользоваться для манипуляций с данными класса. Функция-элемент с тем же
именем, что и класс, называется конструктором этого класса. Конструкторэто
специальная функция-элемент, которая присваивает начальные значения дан-
ным-элементам этого класса. После спецификатора private: следуют три целых
элемента.
Они являются доступными только функциям-элементам класса, т. е.
функциям, прототипы которых включены в определение этого класса. Когда
класс определен, его можно использовать в качестве типа в объявлениях, на-
пример, следующим образом:
Time sunset. // объект типа Time
ArrayOfTimes[5] . // массив объектов типа Time
*pointerToTime. // указатель на объект типа Time
&dinnerTime = sunset; // ссылка на объект типа
Time
Программа на рис.16.3 использует класс Time и создает единственный объ-
ект класса Time, названный t. После создания объекта, автоматически вызыва-
ется конструктор Time, который явно присваивает нулевые начальные значения
всем данным-элементам закрытой части private. Затем печатается время в во-
енном и стандартном форматах, с тем чтобы подтвердить, что элементы полу-
чили
правильные начальные значения. После этого с помощью функции-
элемента setTime устанавливается время, и оно снова печатается в обоих фор-