Scilab-Branch-6.1-GIT
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
isglobal
проверяет имеет ли локальная переменная глобальную копию
Синтаксис
t = isglobal(varname)
Аргументы
- varname
текст: имя любой отдельной локальной переменной. Это не переменная сама по себе (это предоставляет своё содержимое), а её имя.
- t
логическое значение
Описание
isglobal("x")
возвращает %T
, если переменная
x
определена локально и указывает на глобальную копию. В противном случае
она возвращает %F
.
|
Список всех переменных, определённых в глобальном пространстве (не не обязательно в локальном)
может быть получен с помощью who("global") . |
Примеры
Пример №1 с предопределённой глобальной переменной:
mprintf("%s\n", who("global")) // demolist содержит глобальную переменную... isdef("demolist") // %F: ... но нет локальной переменной (пока) demolist(1) // => "Переменная не определена" isglobal("demolist") // => %F, поскольку в нём нет локальных определений global demolist // Мы определяем локальный demolist и заставляем его указывать на // существующую глобальную переменную demolist($,:) // Здесь последняя строка содержимого существующей глобальной переменной isglobal("demolist") // => теперь %T
--> mprintf("%s\n", who("global")) // demolist содержит глобальную переменную... %helps %modalWarning %toolboxes %toolboxes_dir demolist --> isdef("demolist") // %F: ... но нет локальной переменной (пока) ans = F --> demolist(1) // => "Переменная не определена" Неопределённая переменная: demolist --> isglobal("demolist") // => %F, поскольку в нём нет локальных определений ans = F --> global demolist // Мы определяем локальный demolist и заставляем его указывать на // существующую глобальную переменную --> demolist($,:) // Здесь последняя строка содержимого существующей глобальной переменной ans = !Xcos SCI\modules\xcos\demos\xcos.dem.gateway.sce ! --> isglobal("demolist") // => теперь %T ans = T
Пример №2 с пользовательской переменной:
// В списке ниже "abc" не существует. Давайте создадим её локально и глобально: global abc // инициализируется как [] isdef("abc") // => %T isglobal("abc") // => %T abc = %pi; // Записывает одновременно в локальном И глобальном пространствах clear abc // Удаляем локальное определение, но не глобальное abc // => "неопределённая переменная" isglobal("abc") // => %F, поскольку больше нет локальных псевдонимов global abc // переопределим abc, связанную с её глобальной копией. Что это? abc
--> // В списке ниже "abc" не существует. Давайте создадим её локально и глобально: --> global abc // инициализируется как [] --> isdef("abc") // => %T ans = T --> isglobal("abc") // => %T ans = T --> abc = %pi; // Записывает одновременно в локальном И глобальном пространствах --> clear abc // Удаляем локальное определение, но не глобальное --> abc // => "неопределённая переменная" Неопределённая переменная: abc --> isglobal("abc") // => %F, поскольку больше нет локальных псевдонимов ans = F --> global abc // переопределим abc, связанную с её глобальной копией. Что это? --> abc abc = 3.1415927
Смотрите также
- global — определение глобальной переменной
- clearglobal — уничтожает глобальные переменные
- who — список переменных
- isdef — проверяет существование переменной
Report an issue | ||
<< isdef | Переменные | имена >> |