Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

07 наследование 1

.pdf
Скачиваний:
18
Добавлен:
27.03.2015
Размер:
331.96 Кб
Скачать

07 – 21

//ОПАСНО:

//ОБК обрабатывается как ОПК через УБК,

//преобразованный в УПК; во время

//выполнения возможна ошибка при доступе

//к элементу ПК, т.к. его нет в БК!

pointPtr = &p;

circlePtr = (Circle *) pointPtr;

07 – 22

cout << ”ОБК как ОПК через УБК,

<<”преобразованный в УПК:”

<<endl << *circlePtr

<<endl << ”Площадь:

<<circlePtr -> area(); return 0;

}

07 – 23

ОБК как ОБК: [30, 50] ОПК как ОПК: Центр = [120, 89]; Радиус = 2.7

ОПК как ОБК через УБК, не преобраз-ный в УПК: [120, 89]

ОПК как ОПК через УБК, преобразованный в УПК:

Центр = [120, 89]; Радиус = 2.7 Площадь: 22.8906

07 – 24

ОБК как ОПК через УБК, преобразованный в УПК:

Центр = [30, 50]; Радиус = 4.022395e-38

Площадь: 0

07 – 25

ПОЯСНЕНИЯ:

1)Интефейс ПК

2)Список инициализаторов элементов (ИЭ)

При отсутствии списка ИЭ и конструктора с умолчанием – сообщение, например:

Cannot find default constructor to initialize base class ’Point’

3)Доступ перегруженной операции << из ПК к защищенным элементам БК

07 – 26

РАБОТА ПРОГРАММЫ:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]