Оценка выражения MATLAB и получение результатов
оценивает код MATLAB ®, представленный results = evalc(expression)expression и захватывает все, что обычно записывается в командное окно в results.
Примечание
Вопросы безопасности: при звонке evalc с ненадежным пользовательским вводом проверьте ввод, чтобы избежать непредвиденного выполнения кода. Примерами ненадежного пользовательского ввода являются данные, поступающие от пользователя, которого вы можете не знать, или от источника, которым вы не можете управлять. Если вам нужно решить эту проблему, рассмотрите следующие подходы:
Проверка входных данных для evalc. Во-первых, поиск разрешенных операций. Затем, если вы найдете другие операции, запретить выполнение.
Заменить evalc с альтернативой. Дополнительные сведения см. в разделе Альтернативы функции оценки.
Рекомендации по производительности: в большинстве случаев использование evalc функция также менее эффективна, чем использование других функций MATLAB и языковых конструкций, и полученный код может быть более трудным для чтения и отладки. Рассмотрите возможность использования альтернативы evalc.
[ дополнительно возвращает выходные данные из results,output1,...,outputN] = evalc(expression)expression в указанных переменных.
При использовании evalc, функции diary, more, и input отключены.
Если вы используете evalc внутри анонимной функции, вложенной функции или функции, которая содержит вложенную функцию, вычисляемый expression не создает переменные.
Чтобы позволить синтаксическому анализатору MATLAB выполнять более строгие проверки кода и избегать незафиксированных ошибок и других неожиданных действий, не включайте выходные аргументы во входные данные evalc функция. Например, оператор result = evalc(['output = ',expression]) не рекомендуется.
Вместо этого укажите выходные аргументы для evalc для хранения результатов вычисленного выражения. Например:
[result,output] = evalc(expression)