КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Вопросы для самопроверки. Глобальные и локальные объекты
Глобальные и локальные объекты Константы, типы данных и переменные, объявленные в начале программы до описания любых процедур и функций, называют глобальными. Глобальные элементы существуют в памяти на протяжении всей работы программы и доступны как в самой программе, так и внутри всех ее подпрограмм. Внутри подпрограммы могут быть описаны свои собственные константы, типы данных и переменные. Такие элементы называют локальными. Локальные элементы могут использоваться только в той подпрограмме, в которой они определены, а также в процедурах и функциях, которые определены внутри нее. Они не существуют до тех пор, пока подпрограмма, в которой они описаны, не вызвана, а также после завершения ее работы. Пример: области видимости переменных t, x и y. program primer; var t: boolean; procedure A var x: integer; procedure B; var y: real; begin { здесь доступны переменные t, x и y } end; begin { здесь доступны переменные t и x } end; procedure C; begin { здесь доступна только переменная t } end; begin { здесь доступна только переменная t } end. Значение глобальной переменной может быть изменено внутри любой из подпрограмм. Такой эффект иногда называют «побочным», и его использование является нежелательным, т.к. может привести к появлению непонятных ошибок в программе. Чтобы избежать такого эффекта, необходимо следить, чтобы внутри подпрограмм изменялись значения только локальных переменных и формальных параметров. Пример: глобальная и локальная переменная program primer; var global: integer; procedure A; var local: integer; begin local:=5; { допустимо } global:=10; { допустимо, но не желательно } end; begin global:=7; { допустимо } { local:=3; - нельзя, т.к. это локальная переменная } end. Переменная global видна во всей программе, а local – только в процедуре A. Допустима ситуация, когда имена локальных и глобальных переменных совпадают. В этом случае внутри подпрограммы локальная переменная «перекрывает» глобальную. К глобальной же переменной можно обратиться, приписав перед ее именем название программы: <имя программы>. <имя переменной> Пример: совпадение имен глобальной и локальной переменных program primer; var test: real; procedure AAA; var test: integer; begin test:= primer.test; { локальной переменной присваивается значение глобальной } end; … 1. Что такое подпрограмма? 2. Чем отличается процедура от функции? 3. Что такое формальные параметры? Фактические параметры? 4. Чем отличаются параметры-переменные от параметров-значений? 5. Sqr – это функция или переменная? 6. Что понимают под глобальными и локальными объектами?
Дата добавления: 2014-01-06; Просмотров: 258; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |