ВУЗ:
Составители:
Рубрика:
typedef enum{false,true} Boolean;/*-булевский тип; */
class Point: /*-точка на экране в графическом режиме: */
public Location /*-базовый класс позиция; */
{ Boolean Visible;/*-видимость точки на экране; */
public: /*-открытая часть класса; */
Point(int x,int y,Boolean Visible):/*конструктор; */
Location(x,y)/*-вызов базового конструктора; */
{ this->Visible=Visible;/*-инициализация поля*/
} /* класса Point; */
~Point() { } /*-пустой деструктор класса; */
Boolean /*-состояние видимости точки на экране; */
GetVisible() { return Visible; }
void Print() /*-печать координат и состояния точки: */
{ Location::Print();/*-печать координат; */
cout<<" Visible="<<Visible?'*':' ';
}
};/*-конец определения класса точка; */
В производном классе Point функция Print переопределяется.
Для доступа к функции Print базового класса используется пре-
фикс Location :: .
Вернемся опять к структурам.Оказывается,что и в структурах
можно получить тот же самый результат,используя спецификатор
private(личный).По определению структура - это просто класс,
все члены которого открыты,т.е.
struct Location { ... };
есть просто сокращенная запись для
struct Location { public:... };
Структуры используются в тех случаях,когда не требуется за-
щита данных.Посмотрим,тем не менее,как выглядит рассматрива-
емый пример,когда в нем используются структуры и специфика-
тор доступа private:
16
typedef enum{false,true} Boolean;/*-булевский тип; */ class Point: /*-точка на экране в графическом режиме: */ public Location /*-базовый класс позиция; */ { Boolean Visible;/*-видимость точки на экране; */ public: /*-открытая часть класса; */ Point(int x,int y,Boolean Visible):/*конструктор; */ Location(x,y)/*-вызов базового конструктора; */ { this->Visible=Visible;/*-инициализация поля*/ } /* класса Point; */ ~Point() { } /*-пустой деструктор класса; */ Boolean /*-состояние видимости точки на экране; */ GetVisible() { return Visible; } void Print() /*-печать координат и состояния точки: */ { Location::Print();/*-печать координат; */ cout<<" Visible="<
Страницы
- « первая
- ‹ предыдущая
- …
- 14
- 15
- 16
- 17
- 18
- …
- следующая ›
- последняя »