<< comp Функции edit >>

Справка Scilab >> Функции > deff

deff

определение функции во время выполнения программы

Последовательность вызова

deff('[s1, s2, ...] = newfunction(e1, e2, ...)',text [,opt])

Аргументы

e1, e2, ...

входные переменные.

s1, s2, ...

выходные переменные.

text

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

opt

необязательная символьная строка:

'c'

функция "скомпилирована" для большей производительности (по умолчанию);

'p'

функция "скомпилирована" и подготовлена к профилированию (см. справку profile);

'n'

функция не "скомпилирована".

Описание

Функция deff может быть использована для определения функций из ряда инструкций, написанных в текстовых строках. Полученный объект функции имеет те же свойства, что и любая другая функция, определённая в текстовом файле и загруженная с помощью функции exec.

Кавычки в инструкциях (разделяющие строки или означающие транспонирование матрицы) должны быть удвоены для правильной интерпретации (см. справку кавычки). Это может сделать написание несколько неудобным. Как вариант, в таких случаях можно определять функции в файлах, как обычно, для загрузки их в Scilab с помощью функции exec (с опцией 'n') и можно использовать функцию sci2exp для получения распечатки соответствующих инструкций в функции deff.

Примеры

deff('[x]=myplus(y,z)','x=y+z')
deff('[x]=mymacro(y,z)',['a=3*y+1'; 'x=a*z+y'])

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


Report an issue
<< comp Функции edit >>