eval
Avalia código MATLAB guardado em um vetor de caracteres.
Categoria: Programming > Programming Utilities
Sintaxe
eval(expression)
Executa o código de expression como se tivesse sido digitado naquele ponto.
eval(expression, catchExpr)
Executa catchExpr no lugar se expression gerar um erro.
[a, b] = eval(expression)
Captura as saídas de uma expressão que retorna valores.
Descrição
O texto é analisado e executado no workspace de quem chamou, então as variáveis que ele cria ou altera ficam visíveis depois, e resultados de comandos sem ponto e vírgula são exibidos normalmente. Isso torna eval flexível, porém difícil de ler e depurar; indexar com nomes dinâmicos de campos, cell arrays ou function handles costuma ser melhor do que montar nomes de variáveis como texto.
Com dois argumentos, um erro de sintaxe ou de execução no primeiro é capturado e o segundo é avaliado no lugar.
Argumentos de entrada
expression- Texto com um ou mais comandos ou uma expressão.
catchExpr- Texto com código a executar se
expressionfalhar; o erro pode ser lido comlasterrouMException.last.
Argumentos de saída
a, b- Valores retornados pela expressão avaliada.
Exemplo
Avaliando texto, com alternativa
eval('a = 3 + 4')
eval('bad syntax here(', 'disp(''caught'')')
v = eval('2^5')
a = 7
caught
v = 32