Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабораторная работа 1 / lab_1 / Shape
.h// Copyright (C) 1991 - 1999 Rational Software Corporation
#if defined (_MSC_VER) && (_MSC_VER >= 1000)
#pragma once
#endif
#ifndef _INC_SHAPE_46F50BDC00BB_INCLUDED
#define _INC_SHAPE_46F50BDC00BB_INCLUDED
//////////////////////////////////////////////////////////////////////////
class ostream;
//////////////////////////////////////////////////////////////////////////
//обобщенная фигура
class Shape
{
private:
//счетчик объектов
static int _counter;
//идентификатор объекта
int _id;
protected:
//абсцисса фигуры. все фигуры по умолчанию появляются в начале координат
float _x;
//ордината фигуры. все фигуры по умолчанию появляются в начале координат
float _y;
Shape(float x, float y);
//вывести состояние фигуры в поток
virtual ostream& speak(ostream& os) const;
public:
virtual ~Shape();
//получить ординату фигуры
const float get__y() const;
//задать ординату фигуры
void set__y(float value);
//получить абсциссу фигуры
const float get__x() const;
//задать абциссу фигуры
void set__x(float value);
//оператор вывода в поток
friend ostream& operator<<(ostream& o, const Shape& rhs);
virtual bool operator==(const Shape& rhs) const;
//перенести фигуру в заданную точку
void moveToPoint(float x_pos, float y_pos);
//вычисляет площадь фигуры
virtual float Area() const = 0;
};
//////////////////////////////////////////////////////////////////////////
#endif /* _INC_SHAPE_46F50BDC00BB_INCLUDED */
Соседние файлы в папке lab_1