Главная » Файлы » Для учня/студента » Інформатика [ Добавить материал ]

Видимість (область дії) описів науковий
14.07.2010, 16:15
Кожен ідентифікатор (ім'я), який зустрічається в програмі, повинен бути описаний і перебувати в області дії цього опису.

Область дії ідентифікатора поширюється від його опису до кінця поточного блоку, включаючи всі блоки, що входять у поточний блок. Ідентифікатори не можна використовувати доти, поки вони не описані, тобто опис ідентифікатора повинен передувати будь-якому входженню ідентифікатора в текст програми.

Ідентифікатор поля запису, який описується в рамках типу запис, має значення тільки в сполученні з посиланням на змінну цього типу. Тому можна повторно визначити ідентифікатор поля (із таким же написанням) у тому ж самому блоці, але не на тому ж самому рівні в рамках зазначеного типу запис. Проте, ідентифікатор, що був раніше описаний, може бути повторно визначений як ідентифікатор поля в тому ж самому блоці.
Правила для області дії описів покажемо на такому прикладі. Нехай в програмі Test описані модулі Alfa та Omega, а в процедурі Alfa описані модулі Beta та Gamma, як показано на малюнку.
Змінні D,E є глобальними, тобто їх можна використовувати у всіх блоках і всюди вони позначають одну і ту ж область пам'яті та мають однакове значення. Змінні M,N доступні тільки в процедурі Omega.
Змінна А доступна всюди, але у функції Gamma вона є локальною, тобто А в цій функції позначає зовсім іншу область пам'яті. Значення змінної А у функції Gamma ніяк не пов'язано зі значенням цієї змінної у всіх інших модулях.
Змінні В,С доступні в модулях Alfa, Beta, Gamma, але для модуля Beta змінна В є локальною, тобто її значення в процедурі Beta ніяк не пов'язано зі значенням цієї змінної в процедурі Alfa.
Такі ж правила стосуються імен процедур та функцій. До процедур Alfa та Omega можна звертатись з будь-якого місця, до Beta - тільки всередині Alfa і Beta, до Gamma - тільки всередині Alfa і Gamma.

Категория: Інформатика | Добавил: Zet
Просмотров: 223 | Загрузок: 0 | Рейтинг: 0.0/0