Область видимости переменных
Мы отметили удобство указания в именах переменных их типа и области видимости. Что такое тип переменной, мы определили, а что представляет собойобласть видимости? В Visual FoxPro существует три области видимости, характеризуемые ключевыми словами LOCAL, PRIVATE и PUBLIC.
> LOCAL - переменные можно использовать и изменять их значения тольковнутри той процедуры или функции, в которой они объявлены. Когда процедура или функция завершает работу, переменные удаляются из памяти;
> PRIVATE - скрывает переменные, заданные в программе более высокогоуровня, вызывающей текущую программу. Это значит, что если вы объявили в программе переменную pn_RecN = 5 и вызвали процедуру, внутрикоторой объявлена переменная, также имеющая имя pn_RecN и обладающая областью действия PRIVATE, то внутри процедуры вы можете присваивать ей какие угодно значения, производить над ней какие угоднооперации, но переменная вызывающей программы pn_RecN при этомсохранит свое значение и будет по-прежнему pn_RecN = 5;
> PUBLIC - позволяет объявить глобальные переменные. Значения этихпеременных видны из всех процедур и функций.
Каким же образом можно, пользуясь указанными ключевыми словами, задать переменным область их видимости? Просто укажите соответствующееключевое слово, а затем через запятую перечислите переменные. Например:
PUBLIC gn_RecN
Инициализацию переменных размещают в начале программы, процедурыили функции.
Рекомендации по наименованию переменных
Теперь, когда мы знаем, какие бывают типы переменных и области видимости,определимся с рекомендациями по именованию переменных. Конечно, имяможно придумать любое, но гораздо удобнее, если, глядя на имя переменной,можно было бы понять ее назначение и характеристики.
Microsoft рекомендует следующие правила именования переменных:
> ОбластьВидимости - представляется одним из четырех символов:
> Тип - тип переменной, представленный одним из следующих символов:
ь
> ИмяПеременной - произвольный набор символов на ваше усмотрение, пожелательно, чтобы по имени можно было понять назначение переменной.
Михаил Корнеев, известный специалист по Visual FoxPro, рекомендует вдополнение к указанному выше формату имени отделять первые два символаот имени переменной подчеркиванием ([ОбластьВидимости]Тип_ИмяПере-менной).
Например:
gcCommandLine - глобальная строковая переменная;
lnlndex - локальная переменная числового типа;
ld__dv - локальная переменная, храпящая дату.
Иногда, если есть вероятность совпадения имен полей с именами переменных, по рекомендации Microsoft перед именами переменных ставят префикс шс точкой. Например, ш. lnlndex.
Стоит отметить, что язык программирования Visual FoxPro регистронезависимый (иногда используют термин не case-чувствительность). Это означает, что если выиспользовали переменную с именем ln_MyNum, а ниже в программе написалиее имя как ln_mynum, то Visual FoxPro воспринимает ее как ту же самую переменную. Это же относится и к командам, и к функциям. Можно писать их имена и большими буквами, и маленькими, и вперемешку.