Динамические объекты


Все экземпляры объектных типов, так же, как и значения любых других типов, могут быть представлены в программе либо посредством описаний с использованием служебного слова Var, либо динамически, что используется гораздо чаще. Если динамический объект содержит виртуальные методы, то он должен инициализироваться с помощью вызова конструктора, например следующим образом:

Var

OneP: ^Point;

New (OneP);

OneP^.Create (50, 100);

x1 := OneP^.CetX;

Затем вызовы методов могут происходить обычным образом с использованием указателя. Турбо Паскаль допускает использование расширенной процедуры New, совмещающей создание объекта и его инициализацию, которая имеет два параметра: имя указателя и имя конструктора:

New (OneP, Create(50,100));

Здесь вызов конструктора не содержит составного имени, так как первый параметр однозначно определяет, из какого объектного типа берется конструктор.

Аналогично для освобождения памяти при позднем связывании используется процедура Dispose с расширенным синтаксисом:

Dispose (OneP, Done);

Самостоятельный вызов деструктора вне процедуры Dispose не приведет к освобождению памяти, занимаемой экземпляром объекта.

Скрытые поля и методы

Часть полей и методов объектных типов можно объявить как скрытые. Смысл введения таких компонент заключается в ограничении области видимости их имен, так же, как и в модулях. Для этих целей в Турбо Паскале дополнительно введены два служебных слова PRIVATE и PUBLIC. В итоге описание объекта в полной форме выглядит следующим образом:

Type

NewObject = OBJECT (<родитель>);

<поля>; { общедоступные }

<методы>; { общедоступные }

PRIVATE

<поля>; { скрытые }

<методы>; { скрытые }

PUBLIC

<поля>; { общедоступные }

<методы>; { общедоступные }

End;

Объекты наиболее сильно подвергаются изменениям от версии к версии, поэтому в Delphi использование объектов несколько отличается от использования в Турбо Паскале 7.0.

Литература

1. Зелковиц М., Шоу А., Гэннон Дж. Принципы разработки программного обеспечения. Пер. с англ. М.: Мир, 1982 – 368 с., ил.

2. Одинцов И.О. Профессиональное программирование. Системный подход. – 2-е изд. перераб. и доп. – СПб.: БХВ-Петербург, 2004. – 624 с.: ил.

3. Давыдов В.Г. Программирование и основы алгоритмизации: Учеб. Пособие. – М.: Высш. шк., 2003. – 447 с.: ил.

4. Кнут Д. Искусство программирования для ЭВМ. т.1. Основные алгоритмы. – М.: Мир, 1975. – 736 с., ил.

5. Белов В.С., Бруттан Ю.В., Мотайленко Л.В. и др. Основы информатики и информационных технологий. Часть 1. Основы информатики. Пособие для поступающих в вуз. Под общ. ред. к.т.н., доцента В.С. Белова, — СПб/Псков, Изд-во СПбГПУ, 2004 — 160 с.

6. Единая система программной документации. ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.

7. Единая система программной документации. ГОСТ 19.002-80. Схемы алгоритмов и программ. Правила выполнения.

8. Единая система программной документации. ГОСТ 19.003-80. Схемы алгоритмов и программ. Обозначения условные графические.

9. Турбо Паскаль 7.0. Самоучитель. – СПб.: Питер; К.: Издательская группа BHV, 2002. – 416 с.: ил.

10. Немюгин С.А. TURBO PASCAL – СПб, 2000.

11. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс. Учебное пособие. – М.: «Нолидж», 1999. – 616 с., ил.

12. Федоренко Ю. Алгоритмы и программы на Turbo Pascal. Учеб. Курс. – СПб.: Питер, 2001.

13. Зуев Е.А. Язык программирования Turbo Pascal 6.0, 7.0. – М.: Веста, Радио и связь, 1993.

14. Климова Л.М. PASCAL 7.0: Практическое программирование. Решение типовых задач.: Учебное пособие. – М.,: 2000.

 



Дата добавления: 2016-06-29; просмотров: 1317;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.