Класс POINT

Класс POINT

Ниже приведена версия исходного текста класса POINT. Фрагменты, начинающиеся с двух тире "--", представляют собой комментарии, продолжающиеся до конца строки. Комментарии содержат пояснения, облегчающие понимание текста, и не влияют на семантику класса.

indexing

description: "Точка на плоскости"

class POINT feature

x, y: REAL

-- Абсцисса и ордината

rho: REAL is

-- Расстояние до начала координат (0, 0)

do

Result := sqrt (x^2 + y^2)

end

theta: REAL is

-- Полярный угол

do

-- Предлагается реализовать в качестве упражнения (упр. У7.3)

end

distance (p: POINT): REAL is

-- Расстояние до точки p

do

Result := sqrt ((x - p.x)^2 + (y- p.y)^2)

end

translate (a, b: REAL) is

-- Перемещение на a по горизонтали, b по вертикали

do

x := x + a

y := y + b

end

scale (factor: REAL) is

-- Изменение расстояния до начала координат в factor раз

do

x := factor * x

y := factor * y

end

rotate (p: POINT; angle: REAL) is

-- Поворот вокруг p на угол angle

do

-- Предлагается реализовать в качестве упражнения (упр. У7.3)

end

end

Некоторые аспекты приведенного текста неочевидны и требуют дополнительных разъяснений.

Класс в основном состоит из предложения, перечисляющего различные компоненты, вводимого ключевым словом feature. Кроме того, присутствует предложение indexing дающее общее описание (description), полезное для понимания функциональности класса, но никак не влияющее на семантику исполнения. Позднее будут рассмотрены три дополнительных предложения: inherit - для наследования; creation - при необходимости использования специального конструктора; invariant - для объявления инвариантов класса. Будет рассмотрена также возможность включения в класс двух или более предложений feature.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

5.1. Класс

Из книги автора

5.1. Класс Класс (class) в языке UML служит для обозначения множества объектов, которые обладают одинаковой структурой, поведением и отношениями с объектами из других классов. Графически класс изображается в виде прямоугольника, который дополнительно может быть разделен


Тип Point(F)

Из книги автора

Тип Point(F) Первым утилитарным типом, о котором вам следует знать, является тип System.Drawing.Point(F). В отличие от иллюстративных типов Point, создававшихся в предыдущих главах, тип Point(F) GDI+ поддерживает целый ряд очень полезных членов, включая следующие:• +, -, ==, != – перегруженные


Класс Pen

Из книги автора

Класс Pen Класс Pen используется для создания пера, при помощи которого проводятся прямые и кривые линии. В отличие от полной версии .NET Framework, поддерживающей четыре перегруженных версии конструктора Pen, .NET Compact Framework позволяет создавать перо только с помощью двух


Класс Icon

Из книги автора

Класс Icon Объект Icon используется методом DrawIcon для отображения пиктограмм. Предположим, что необходимо использовать пиктограмму, хранящуюся в ресурсах программы. В таком случае понадобится код, приведенный в листинге 6.6.Листинг 6.6Icon myIcon = new


Структура Point

Из книги автора

Структура Point Структура Point содержит координаты X и Y для указания расположения некоей точки. В библиотеке .NET Compact Framework поддерживается только один конструктор для создания объекта Point, в котором указываются эти координаты. Структура Point часто используется в методах DrawPolygon


Самый базовый класс MFC (класс CObject)

Из книги автора

Самый базовый класс MFC (класс CObject) Подавляющее большинство классов библиотеки MFC наследовано от базового класса CObject, лежащего в основе всей иерархии классов этой библиотеки. Методы и элементы данных класса CObject представляют наиболее общие свойства наследованных из него


Архивный класс (класс CArchive)

Из книги автора

Архивный класс (класс CArchive) Класс CArchive используется для сохранения и восстановления состояния объектов в файлах на диске. Перед использованием объекта класса CArchive он должен быть привязан к файлу – объекту класса CFile.Более подробно о процессе сохранения и восстановления


Класс CObject – основной класс MFC

Из книги автора

Класс CObject – основной класс MFC Подавляющее большинство классов из библиотеки MFC наследуются от основного класса CObject. Практически все классы, которые используются в ваших приложениях, например CView или CWinApp, унаследованы от класса CObject.Класс CObject обеспечивает наиболее общие


Глава 7 Электронные презентации Microsoft Power Point

Из книги автора

Глава 7 Электронные презентации Microsoft Power Point Введение В деловой жизни часто приходится сталкиваться с ситуацией, когда необходимо заинтересовать людей своими достижениями, привлечь внимание к деятельности фирмы, рассказать в доступной форме о товаре, сделать доклад на


7.7. Печать документов Microsoft Power Point

Из книги автора

7.7. Печать документов Microsoft Power Point Возможности печати в Microsoft Power PointВывод презентаций на печать не является основной задачей Microsoft Power Point. Однако при подготовке к докладу удобно пользоваться отпечатанными материалами. В Microsoft Power Point можно настроить различные режимы печати.


Класс POINT

Из книги автора

Класс POINT Ниже приведена версия исходного текста класса POINT. Фрагменты, начинающиеся с двух тире "--", представляют собой комментарии, продолжающиеся до конца строки. Комментарии содержат пояснения, облегчающие понимание текста, и не влияют на семантику класса.indexingdescription:


У7.2 Завершение реализации POINT

Из книги автора

У7.2 Завершение реализации POINT Завершите исходный текст класса POINT. Заполните недостающие фрагменты, добавьте процедуру rotate (вращение точки вокруг начала координат), а также другие компоненты, которые считаете


У11.2 Класс и его АТД

Из книги автора

У11.2 Класс и его АТД Проверьте все предусловия и аксиомы АТД STACK, введенного в предыдущих лекциях, и покажите, отображаются ли они в классе STACK4, а если да, то


Power Point

Из книги автора

Power Point Милые дамы, у нас с вами ну просто куча достоинств! Но до этого дня о своих достоинствах или успехах вы могли только рассказать. Теперь вы сможете еще и показать всем-всем-всем, какие вы умные, талантливые, творческие.Мы будем сейчас учиться строить свои презентации и