表达式是 AutoLISP 的基本结构单元,Visual LISP 的工作原理是反复读取、计算和打印表达式。这在 LISP 编程中通常称为读取-评估-打印循环。 注意:Visual LISP IDE 仅在 Windows 上可用。
Visual LISP 在顶级读取-评估-打印循环中执行 AutoLISP 程序,除非该程序已被中断或挂起以允许调试。当您在控制台窗口提示符下计算表达式并显示正常提示时,您也在顶级工作。 当 AutoLISP 程序中断或挂起时,控制台窗口将传递控制权,并进入中断循环。中断循环是一个单独的读取-评估-打印循环,嵌套在原始读取-评估-打印循环的下面。可以中断中断循环,并在其下启动另一个读取-评估-打印循环。中断循环相对于顶层的嵌套级别称为中断级别。 当您进入中断循环时,Visual LISP 会在控制台窗口提示符前加上一个数字,指示您所在的级别。 例如,当您第一次在程序中输入中断循环时,提示会用数字 1 指示这一点: _1_$ 注意:在中断循环中,无法切换到 AutoCAD 窗口。
在中断循环中,您可以对程序在中断发生位置执行的所有变量进行读写访问。例如,如果中断发生在包含多个局部变量声明的函数中,则可以访问这些变量和任何全局变量。可以通过在控制台窗口提示符下输入带有函数的表达式来更改变量的值。setq Visual LISP 支持两种类型的中断循环
连续断路循环Continuable 是最常见的中断循环,当您想要单步执行和调试程序时使用。您可以通过以下任一方法在程序执行的第一个中断处进入连续中断循环:
在断点处停止时,可以通过以下方式控制后续程序执行:
退出 all break 循环到顶层后,控制台窗口提示符将返回其原始形式(不带数字前缀)。 不可连续的断路回路当错误导致程序中断并启用“出错时中断”选项时,将激活不可连续的中断循环。在不可连续的中断循环中,可以访问错误环境中的所有变量,但不能继续执行程序或执行任何 Step 命令。 如果在不可连续的中断循环中激活AutoCAD,则无法在命令窗口中输入任何内容;事实上,该窗口将不包含命令提示符。但是,如果您不小心尝试在 AutoCAD 命令窗口中键入任何内容,则键盘输入将排队,直到控制权返回到 AutoCAD 窗口(即,在退出中断循环并激活 AutoCAD 窗口之后)。此时,AutoCAD将评估您键入的任何内容,就像您刚刚在命令提示符下输入它一样。 注意:您可以通过检查“调试”菜单或工具栏上的“单步执行”和“继续”是否处于活动状态来区分可连续中断循环和非连续中断循环。
相关概念相关任务 |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-1-8 19:13
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.