Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.0.0 - Русский


isdef

проверяет существование переменной

Синтаксис

ve = isdef(name)
ve = isdef(name, where)

Аргументы

name

матрица символьных строк

where

символьная строка, может быть 'l' (для "local"), 'n' (для "nolocal") or 'a' (для "all"). Значение по умолчанию 'a'.

ve

матрица того же размера, что и name с логическими значениями

Описание

isdef(name) возвращает %T, если переменная с именем name существует и %F в противном случае.

Предостережение: функция, которая использует isdef, может вернуть результат, который зависит от области видимости!

isdef(name,'l') возвращает %T, если переменная с именем name существует в локальной области видимости текущей функции и %F в противном случае.

isdef(name,'n') возвращает %T, если переменная с именем name существует в полной области видимости (включая глобальный уровень) текущей функции и %F в противном случае.

Примечание: учитывается только первая буква параметра where.

Примеры

A = 1; B = 2; C = 3; D = 4;
isdef(['A', 'B'; 'C', 'D'])
clear A B C D;
isdef(['A', 'B'; 'C', 'D'])

function level1()
  function level2()
    disp(isdef(["a", "b"], "a"));
    disp(isdef(["a", "b"], "l"));
    disp(isdef(["a", "b"], "n"));
  endfunction
  level2()
endfunction
function go()
  a = 1;
  level1()
endfunction
go()

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

  • exists — проверяет существование переменной
  • isglobal — проверяет имеет ли локальная переменная глобальную копию
  • whereis — Returns the name of the loaded library/module a given function belongs to
  • type — возвращает тип переменной
  • typeof — explicit type or overloading code of an object
  • clear — уничтожает переменные
Report an issue
<< global Переменные isglobal >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Oct 24 14:37:05 CEST 2023