通常,只需在Octave提示下输入表达式,或要求Octave解释保存在文件中的命令,即可计算表达式。
有时,您可能会查找有必要对已计算并存储在字符串中的表达式进行求值,这正是eval
函数允许您这样做。
(try)
¶(try, catch)
¶分析字符串尝试并将其被认为是Octave程序。
如果执行失败,请计算可选字符串接住.
字符串尝试在当前上下文中进行评估,因此任何结果在之后都可用eval
返回。
以下示例创建变量A在当前工作空间中近似值为3.1416。
eval(“A=acos(-1);”);
如果在评估过程中出现错误尝试然后接住字符串,如下例所示:
eval('error(“这是一个糟糕的例子”);','printf(“发生此错误:\n%s\n”,lasterr());');-|出现此错误:这是一个错误的示例
编程注意事项:如果您仅使用eval
作为一种错误捕获机制,而不是用于执行任意代码字符串,请考虑使用try/catch块或ununwind_protect/unnnd_protect_cleanupblocks。这些技术具有更高的性能,并且不会像评估任意代码那样引入安全考虑。
这个evalc
函数还捕获从求值表达式返回的任何控制台输出。
版权所有 © 2024 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号