Имя переменной в Visual FoxPro
« Назад Имя переменной может включать буквы (английского и/или русского алфавита), цифры и знаки подчеркивания и начинаться либо с буквы, либо со знака подчеркивания. Принципы формирования имен переменных приведены в разд. 1.1.3.1. Если имя переменной (константы) совпадает с одним из зарезервированных имен VFP, то его начертание в текстовом окне VFP примет синей цвет, или черный – в противном случае. Примеры допустимых имен переменных: varName = 5.2 _var_Name = 5.2 перемИмя = 5.2 ? varName, _var_Name, перемИмя && Напечатает: 5.20 5.20 5.20 Замечание. В VFP определены многочисленные так называемые системные переменные, хранящие употребляемые для системных нужд значения. Например, системная переменная _DIARYDATE содержит дату системного календаря VFP (см. разд. 3.9.9.2). При начале работы приложения системные переменные инициализируются значениями по умолчанию. Так, системная переменная _DIARYDATE при запуске приложения получает значения текущей (системной) даты. В процессе исполнения значения системных переменных могут быть изменены как VFP, так и пользователем. Имена системных переменных начинаются со знака подчеркивания. Регистр букв в имени переменных не имеет значения. То есть имена VARName, VARNAME и varname трактуются VFP как имя одной и той же переменной. Имени переменной может предшествовать буква m с последующей точкой, например: local m.lVar1, lVar2 && Употребляем префикс m. для переменной lVar1 ? lVar1, m.lVar2 && Употребляем префикс m. для переменной lVar2 Такой префикс необходим, когда переменные создаются командой SCATTER: он позволяет отличить их от одноименных полей таблицы. Тип переменных, созданных SCATTER, совпадает с типом соответствующих полей таблицы. && Таблица Books должна быть открыта select Books && Таблица Books имеет поля BookId, Book и Price && Создаются переменные m.BookId, m.Book и m.Price, && имеющие пустые значения (поскольку указана опция BLANK) && Тип переменных совпадает с типом породивших их полей таблицы scatter memvar blank && Тестируем значения переменных, созданных командой SCATTER ? Empty(m.BookId), Empty(m.Book) && Напечатает: .T. .T. && Тестируем значения полей таблицы Books ? Empty(BookId), Empty(Book) && Напечатает: .F. .F. |