Распечатать страницу

Переменные в Microsoft Visual FoxPro

« Назад

Переменные разделяются на скалярные и массивы. Скалярная переменная содержит одно значение. Массив содержит, как правило, несколько значений (элементов) и может иметь в VFP одно или два измерения.

Переменная может быть употреблена в выражении только после ее создания. Тип переменной определяется типом значения, которое переменная хранит.

Переменные создаются во время исполнения программы. При этом VFP отводит для них необходимую память, размер которой определяется типом хранимого переменной значения, а случае символьных данных – и самим значением.

Независимо от способа создания переменная всегда получает значение. Тип переменной определяется типом хранимого в ней значения и может изменяться по мере выполнения программы, например:

varName = 5.2

? VarType(varName)          && Напечатает: N

&& Заносим в переменную вместо числа строку

&& Это повлечет изменение типа переменной

varName = "Теперь это строка"

? VarType(varName)          && Напечатает: C

Скалярная переменная может быть создана:

  • в результате выполнения оператора присваивания (команды =), например:

&& Создается переменная nValue типа Numeric со значением 5

nValue = 5

  • командой STORE, например:

&& Создаем переменные nValue1 и nValue2 типа Numeric со значением 5

store 5 to nValue1, nValue2

  • командами PUBLIC и LOCAL; переменные, созданные этими командами, получают значение .F. (ложь), например:

&& Создаем 3 переменные – глобальную и две локальных

public gVar

local lVar1, lVar2

? gVar, lVar1, lVar2           && Напечатает: .F.  .F.  .F.

  • в результате выполнения команд VFP, таких, как CALCULATE, SCATTER и др. (порядок создания переменных см. в описании команд), например:

&& Таблица Books должна быть открыта

select Books

&& Создается переменная avgPrice типа Numeric,

&& поскольку Price – это числовое поле

average Price to avgPrice

Массивы создаются командами PUBLIC, LOCAL, DIMENSION и DECLARE, а также в результате выполнения многих иных команд и функций VFP, например ADIR, AFONT, SCATTER и др. Более подробно о массивах см. в гл. 6.

Переменные, созданные VFP, также называются переменными памяти. Переменные подразделяются на локальные, глобальные и частные.