Переменные памяти существуют, только пока приложение выполняется или в той сессии Visual FoxPro, в которой они были созданы. Для определения области существования переменных памяти, используйте ключевые слова LOCAL, PRIVATE и PUBLIC.

Обращение к переменным памяти

Если переменная памяти имеет то же самое имя, что и поле таблицы в текущей рабочей области, то Visual FoxPro сначала предполагает, что требуется прочитать содержимое именно поля таблицы. И только если в текущей рабочей области нет такого поля, осуществляется чтение значения переменной памяти. Вы можете уточнить, что ссылка относиться именно к переменной памяти, используя m. или m-> вместе с именем переменной памяти как в следующих примерах.

  Копировать код
* Закрываю таблицу, которая может быть открыта в текущей рабочей области
USE

* Создаю переменную памяти
cFname = "переменная"
?  cFname         && печатает содержимое переменной памяти cFname

* Создаю курсор с полем, имя которого совпадает с именем переменной памяти
CREATE CURSOR test (cFname C(10))
INSERT INTO test (cFname) VALUES ("таблица")

?  cFname         && печатает содержимое поля cFname
?  m.cFname       && печатает значение переменной памяти cFname      
?  m->cFname      && печатает значение переменной памяти cFname
?  test.cFname    && печатает содержимое поля cFname

Для получения дополнительной информации по этим командам смотрите соответствующие темы в Help.

Замечание:
В объектно-ориентированном программировании Вы можете создавать свойства объектов для хранения значений вместо использования переменных памяти. Для получения дополнительной информации смотрите Объектно-оиентированное программирование.

Смотрите также