联合IF
大家好可以从一个if语句控制多个命令吗?即。
(如果(或(=T)(=T)(=T))
(命令“circle”“0,0”“25”)
(命令“circle”“0,0”“50”)
(命令“circle”“0,0”“75”)
(命令“circle”“0,0”“100”)
(命令“圆圈”0,0“125”)
(命令“circle”“0,0”“150”)
(命令“circle”“0,0”“175”)
(命令“circle”“0,0”“200”)
(命令“circle”“0,0”“225”)
(命令“circle”“0,0”“250”)
);如果结束
我已经玩过(cons&(cond)了,假设它们允许上述情况,但无法正常运行。
谁能给点建议吗?
非常感谢。 用progn换行,如果任何表达式为true,则执行整个progn语句。 啊,常见的错误,我总是把自己搞砸。
If语句的结构为:
(如有)
当然,忽略斜体文本。
您会注意到一个非常重要和关键的方面:它只允许一个命令。使用条件语句将允许许多命令,但If只允许一个。
不过,你可以绕过这个问题。将所有命令封装在程序中,如下所示:
(progn
<command one>
<command two>
...
<command banana>
)
Progn正确地包装了多个表达式,但我相信您可能可以这样绕过它:
(if (or )
(command "circle" "0,0" "25" "circle" "0,0" "50" "circle" "0,0" "75"
"circle" "0,0" "100""circle" "0,0" "125""circle" "0,0" "150"
"circle" "0,0" "175""circle" "0,0" "200""circle" "0,0" "225"
"circle" "0,0" "250"))
PS>您不需要指定(=t)
如果持有除nil以外的任何值,它将返回T。
这里有更多关于Progn的帮助
http://www.cadtutor.net/forum/showpost.php?p=173196&postcount=10 魔术
谢谢你们。
页:
[1]