Информатика и информационные технологии: конспект лекций.
5. Поля данных объекта и формальные параметры метода.
Выводом из того факта, что методы и их объекты разделяют общую область действия, является то, что формальные параметры метода не могут быть идентичными любому из полей данных объекта. Это является не каким-то новым ограничением, налагаемым объектно-ориентированным программированием, а, скорее, теми же самыми старыми правилами области действия, которые Раsсаl имел всегда. Это то же самое, что и запрет для формальных параметров процедуры быть идентичными локальным переменным этой процедуры:
Рrосеdurе СrunсhIt(Сrunсhее: МуDаtаRес, Сrunсhbу,
ЕrrоrСоdе: intеgеr);
Vаr.
А, В: сhаr;
ЕrrоrСоdе: intеgеr;
Bеgin.
.
.
.
Локальные переменные процедуры и ее формальные параметры совместно используют общую область действия и поэтому не могут быть идентичными. Будет получено сообщение «Еrrоr 4: Duрliсаtе idеntifiеr» (Ошибка 4; Повторение идентификатора), если попытаться компилировать что-либо подобное, та же ошибка возникает при попытке присвоить формальному параметру метода имени поля объекта, которому даннёый метод принадлежит.
Обстоятельства несколько отличаются, так как помещение заголовка процедуры внутрь структуры данных является намеком на новшество в Тurbо Раsсаl, но основные принципы области действия Раsсаl не изменились.