Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Выберите правильный ответ. Деструктор обязательно описывать:



Деструктор обязательно описывать:

1) для любых объектов;

2) для объектов, имеющих конструктор;

3) для динамических объектов;

4) для динамических полиморфных объектов.

3. Дайте определение метода Методы: Процедуры и функции, связанные с классом. Они определяют действия, ко-торые можно выполнять над объектом такого типа, и которые сам объект может выпол-нять.

Опишите порядок создания динамического объекта

Динамическое создание объектов

Для работы с динамическими объектами используется расширенный синтаксис процедур New и Dispose. Обе процедуры в этом случае содержат в качестве второго параметра имя конструктора или деструктора объекта:

New(P, Construct) или

Dispose(P, Destruct).

Где Р — указатель на переменную объектного типа, a Construct и Destruct — конструктор и деструктор этого типа.

Действие процедуры New в случае расширенного синтаксиса равносильно действию операторов

New(P);

Р^.Construct;

А вызов процедуры Dispose эквивалентен последовательности

Р^.Destruct; Dispose(P);

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

Для выделения памяти под объекты используются процедура и функция new.

Например, если определены указатели:

Type

pmonstr = *monstr:

pdaemon = ^daemon; var pm: pmonstr; pd: pdaemon;

можно создать объекты с помощью вызовов:

new(pm); { или pm:= new(pmonstr); } new(pd); { или pd:= new(pdaemon); }

Обратите внимание, что при использовании new в форме процедуры параметром является указатель, а в функцию передается его тип. Так как после выделения памяти объект обычно инициализируют, в Паскале для удобства определены расширенные формы new с двумя параметрами. На месте второго параметра задается вызов конструктора объекта:





Дата публикования: 2015-10-09; Прочитано: 398 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...