请用这个代码解释我
嗨,亲爱的朋友们如果可能的话,请给我解释一下这个代码是怎么做到的?我的问题是理解这段代码。
(foreach str(反面为“adam”“ben”“claire”“david”)(setq lst(cons(strcase str)lst)))
返回:
(“ADAM”“BEN”“CLAIRE”“DAVID”)??????????
谢谢 请参阅我的教程:Mapcar&Lambda
你不理解代码的哪一部分? 亲爱的lee mac,我已经将这段代码写入了你们的教程,在这段代码中,我们为foreach定义了:一个变量(str),一个列表和函数,我有一个问题想问你们:
2-(cons(strcase str)lst)做什么?(是存储字符串吗?)
如果可能的话,请告诉我工艺代码的一般说明。
谢谢
与其详细解释这段小而简单的代码片段,不如推荐一种好方法,在尝试理解任何代码段时使用。
首先,从最里面的表达式向外逐个解析代码表达式,因为AutoLISP就是这样计算的。
对于每个表达式,确保您知道代码引用的每个变量或符号所持有的值。
阅读您不熟悉的每个函数的开发人员文档,确保您理解每个函数所需的参数以及每个函数返回的值。
以下是有关函数的文档:
颠倒
foreach公司
小写
欺骗
setq公司
在我的网站上可以找到到主要AutoLISP函数参考(和其他编程参考)的链接。
李 谢谢亲爱的李
我花了几个小时,我理解了代码。
我非常感谢你们在网站上发布的教程。
我相对来说学习了autolisp,你建议我开始学习Visual LISP,还是继续学习autolisp直到高级阶段?
Autolisp是否满足在AutoCAD中编程的所有要求,还是Visual LISP也是需要学习的?
谢谢
听你这么说太好了,非常欢迎你。
首先,请注意,Visual LISP不是“Vanilla”AutoLISP的替代品,而是一个扩展。考虑到这一点,我个人建议在进入Visual LISP之前完全精通AutoLISP,因为如果您希望进入诸如使用Visual LISP反应器之类的领域,在AutoLISP中打下坚实的基础将非常有益,因为您的编程需要绝对无懈可击。 尊敬的李:
非常感谢你给我的建议。 不客气,哈米德·西夫。
页:
[1]