Разделы презентаций


Совместимость объектных типов

Содержание

Наследование несколько изменяет правила совместимости типов в Турбо Паскале.

Слайды и текст этой презентации

Слайд 1Совместимость объектных типов

Совместимость объектных типов

Слайд 2Наследование несколько изменяет правила совместимости типов в Турбо Паскале.

Наследование несколько изменяет правила совместимости типов в Турбо Паскале.

Слайд 3Совместимость объектных типов.
Порожденный тип наследует совместимость со всеми своими родительскими

типами.
Эта совместимость бывает трех видов
между экземплярами объектов

между указателями

на экземпляры объектов
между формальными и фактическими параметрами
Совместимость объектных типов.Порожденный тип наследует совместимость со всеми своими родительскими типами.Эта совместимость бывает трех видовмежду экземплярами объектов

Слайд 4СОВМЕСТИМОСТЬ ОБЪЕКТНЫХ ТИПОВ.
Необходимо помнить, что во всех трех случаях совместимость

типов расширяется только от потомка к родителю.
Другими словами, дочерние типы

могут свободно использоваться вместо родительских, но не наоборот.
СОВМЕСТИМОСТЬ ОБЪЕКТНЫХ ТИПОВ.Необходимо помнить, что во всех трех случаях совместимость типов расширяется только от потомка к родителю.Другими

Слайд 5Совместимость объектных типов.
В модуле Persons тип TStaff является потомком TPerson,

а тип TTeacher является потомком TStaff.
Учитывая это, рассмотрим следующие описания:
TYPE

Pperson = ^ТРerson;
PStaff = ^TStaff;
Pteacher = ^TTeacher;
 
VAR
Person : TPerson;
Staff : TStaff;
Teacher : TTeacher;
PPtr : PPerson;
SPtr : PStaff;
TPtr : PTeacher;

В этом случае справедливы следующие операторы присваивания:

Person:=Staff;
Staff:=Teacher;
Person:=Teacher;

Совместимость объектных типов.В модуле Persons тип TStaff является потомком TPerson, а тип TTeacher является потомком TStaff.Учитывая это,

Слайд 6Необходимо помнить, в каком порядке следует совмещать типы.

Необходимо помнить, в каком порядке следует совмещать типы.

Слайд 7СОВМЕСТИМОСТЬ ОБЪЕКТНЫХ ТИПОВ.
Принцип совмещения таков:
поля данных источника должны полностью

заполнить поля данных приемника.
Порожденные типы содержат все поля, имеющиеся в

порождающих типах, благодаря свойству наследования.
Поэтому размер порожденного типа может быть таким же, как и размер родителя, либо (что встречается чаще всего) — больше размера родителя, но никогда не бывает меньше.
СОВМЕСТИМОСТЬ ОБЪЕКТНЫХ ТИПОВ.Принцип совмещения таков: поля данных источника должны полностью заполнить поля данных приемника.Порожденные типы содержат все

Слайд 8Совместимость объектных типов.
Присвоение порождающего (родительского) объекта порожденному (дочернему) может привести

к тому, что некоторые поля порожденного объекта останутся неопределенными, что

является недопустимым.
Совместимость объектных типов.Присвоение порождающего (родительского) объекта порожденному (дочернему) может привести к тому, что некоторые поля порожденного объекта

Слайд 9Совместимость объектных типов.
В операторах присваивания из источника в приемник будут

копироваться только поля,
являющиеся общими для обоих типов.
Например:

Person := Teacher;

В

данном операторе присваивания только поля Name, Date и Rate из переменной Teacher будут скопированы в переменную Person,
т.к. они являются общими для ТТеасher и TPerson.
Совместимость объектных типов.В операторах присваивания из источника в приемник будут копироваться только поля, являющиеся общими для обоих

Слайд 10Совместимость типов работает также для указателей типов объектов и подчиняется

тем же общим правилам, что и для экземпляров объектов.

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

Слайд 11Совместимость объектных типов.
Допустимо:
SPtr:=TPtr;
PPtr:=SPtr;
PPtr:=TPtr;
Указатель на потомка может присваиваться указателю

на родителя.
Обратные присваивания недопустимы.

Совместимость объектных типов.Допустимо:SPtr:=TPtr; PPtr:=SPtr; PPtr:=TPtr;Указатель на потомка может присваиваться указателю на родителя.Обратные присваивания недопустимы.

Слайд 12Формальный параметр
(конкретное значение либо параметр-переменная) данного объектного типа может

принимать в качестве фактического параметра объект
своего же типа или

объекты всех дочерних типов.
Формальный параметр (конкретное значение либо параметр-переменная) данного объектного типа может принимать в качестве фактического параметра объект своего

Слайд 13Совместимость объектных типов.
Если определить заголовок процедуры следующим образом:

PROCEDURE Show_Fields(Obj :

TStaff);

Допустимыми типами фактических параметров могут быть TStaff или ТТеасher, но

не тип TPerson.
Совместимость объектных типов.Если определить заголовок процедуры следующим образом:PROCEDURE Show_Fields(Obj : TStaff);Допустимыми типами фактических параметров могут быть TStaff

Слайд 14Необходимо помнить, что
параметры-значения
существенно отличаются от
параметров-переменных.

Необходимо помнить, что параметры-значения существенно отличаются от параметров-переменных.

Слайд 15СОВМЕСТИМОСТЬ ОБЪЕКТНЫХ ТИПОВ.
Параметр-переменная является указателем на действительный, посылаемый в качестве

параметра объект, а параметр-значение — только копией фактического параметра.
Более

того, эта копия включает только те поля, которые входят в тип формального параметра-значения, т.е. фактический параметр преобразуется к типу формального параметра.
Для параметра-переменной фактическое значение остается неизменным.
СОВМЕСТИМОСТЬ ОБЪЕКТНЫХ ТИПОВ.Параметр-переменная является указателем на действительный, посылаемый в качестве параметра объект, а параметр-значение — только копией

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика