Объектно-ориентированный язык программирования С++ в примерах. Сивохин А.В. - 17 стр.

UptoLike

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

struct Location /*-позиция: */
{private:int x,y;/*-координаты точки экрана; */
public: /*-открытая часть структуры: */
Location(int x,int y) /*-конструктор структуры; */
{this->x=x; /*-инициализация абсциссы; */
this->y=y; /*-инициализация ординаты; */
}
~Location() {} /*-пустой деструктор структуры; */
int GetX() { return x; } /*-возвращает абсциссу; */
int GetY() { return y; } /*-возвращает ординату; */
void Print()/*-печать координат точек экрана: */
{ cout<<"\nx="<<x;/*-печать абсциссы; */
cout<<" y="<<y;/*-печать ординаты; */
}
};/*-конец определения структуры Location; */
typedef enum{false,true} Boolean;/*-булевский тип; */
struct Point: /*-точка на экране в графическом режиме: */
Location /*-базовая структура позиции; */
{ private:Boolean Visible;/*-видимость точки; */
public: /*-открытая часть структуры: */
Point(int x,int y,Boolean Visible):/*-конструктор;*/
Location(x,y)/*-вызов базового конструктора; */
{ this->Visible=Visble;/*-инициализация по- */
} /* ля структуры; */
~Point() {} /*-пустой деструктор структуры; */
Boolean /*-состояние видимости точки на экране: */
GetVisible() { return Visible; }
void Print() /*-печать координат и состояния точки: */
{ Location::Print();/*-печать координат; */
cout<<" Visible="<<Visible?'*':' ';/*-со- */
} /* стояние;*/
};/*-конец определения структуры Point; */
В примере сделаны следующие преобразования:
а)ключевое слово class заменено на ключевое слово struct;
17
struct Location /*-позиция:                                        */
      {private:int x,y;/*-координаты точки экрана;                 */
  public: /*-открытая часть структуры:                             */
        Location(int x,int y) /*-конструктор структуры;            */
                 {this->x=x;          /*-инициализация абсциссы;   */
                     this->y=y;       /*-инициализация ординаты;   */
                 }
      ~Location() {} /*-пустой деструктор структуры;               */
   int GetX() { return x; } /*-возвращает абсциссу;                */
   int GetY() { return y; } /*-возвращает ординату;                */
  void Print()/*-печать координат точек экрана:                    */
                 { cout<<"\nx="<