Реферат: Протоколы и стандарты объектно-ориентированного программирования
чек, эллипсов - производных от класса "геометрическая фигура" и
объяснить, как их рисовать, увеличивать и поворачивать. Как дви-
гать - объяснять не надо. Это уже есть в базовом классе. Функции
нашей библиотеки могут работать собъектами вновь созданных типов,
для них это варианты геометричесой фигуры. Следует отметить, что
в производных классах могут (и, как правило, должны) появлятся
данные и функции, которых нет в базовом классе. Однако ни одна из
функций, обрабатывающих "геометрические фигуры", никогда не уз-
нает о специфических свойствах многоугольника или эллипса, кроме
того, что они по-своему рисуются, увеличиваются и поворачиваются.
Производный класс сам может быть базовым для других классов, а
поздние версии С++ позволяют сделать один класс производным от
нескольких других.
При написании программы часто допускаются досадные оплошнос-
ти, обнаруживающиеся только на стадии выполнения и, увы, слишком
поздно. Например, если переменная по смыслу - знаменатель дроби,
хотелось бы получить сообщение об ошиюке тогда, когда ей присваи-
вается ноль, а не тогда, когда на этот ноль что-нибудь делится.
Или, скажем, функция рисования точки. Невозможно удержаться от
соблазна вызвать ее хотя бы раз без проверки выхода за границы
экрана. В то же время , если мы пишем программу рисования линии,
обязательно нужна функция, которая тупо ставит точку - и как мож-
но быстрее. Существует много ситуаций, когда функции и данные
следует разрешить использовать только привилегированным функциям,
над которыми ва "хорошо подумали". В С++ этого можно добиться,
сделав "опасные" данные и функции защищенными членами какого-ни-
будь класса. К ним имеют доступ только функции-члены этого же
класса, а так же друзья класса. Напротив, если данные или фун-
кции-члены объявлены public, они являются общедоступными.