Группы пользователей Autodesk

Различия между локальными и глобальными переменными


Средства отладки Visual LISP

 

Средства отладки Visual LISP 
 

Различия между локальными и глобальными переменными

На этом занятии мы сравним локальные и глобальные переменные. Глобальные переменные доступны для всех функций, загруженных в документ (рисунок AutoCAD®). Эти переменные могут сохранять свое значение после завершения работы программы, в которой они были описаны. Этим свойством глобальных переменных можно при необходимости воспользоваться. Пример этого будет рассмотрен немного позднее.

Локальные переменные хранят свои значения, только пока выполняется функция, в которой они были определены. После завершения выполнения функции память автоматически освобождается от значений локальных переменных. Это называется автоматической очисткой памяти от мусора и является общим свойством большинства сред разработки на языке LISP, в том числе и VLISP. Локальные переменные используют память более эффективно, чем глобальные.

Другим большим преимуществом локальных переменных является то, что они упрощают отладку и усовершенствование приложений. Так, например, никогда нельзя быть точно уверенным, когда и какая именно функция изменила значение глобальной переменной. Проследить же изменение локальной переменной значительно проще. Таким образом, локальные переменные позволяют сократить количество побочных эффектов (выражающихся в том, что одна часть программы влияет на ее другую часть).

Из-за перечисленных выше преимуществ мы практически везде в данном пособии будем использовать локальные переменные.

Примечание Возможно, что пользователи, уже работавшие с AutoLISP, привыкли использовать глобальные переменные для проверки работы программы в ходе ее создания. Теперь это уже не нужно, так как в VLISP имеются другие мощные средства отладки.

Темы:

Применение локальных переменных в программе

Изучение функции gp:getPointInput

 



Содержание раздела