明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: 自贡黄明儒

[经验] Lisp程序结构

[复制链接]
发表于 2014-10-16 20:10:50 | 显示全部楼层
本帖最后由 zzyong00 于 2014-10-16 20:11 编辑

建议*DOC*做函数,这样什么时候调用都是当前的DOC
(defun *DOC* ()
  (VL-LOAD-COM)
  (vla-get-ActiveDocument (vlax-get-acad-object))
)
 楼主| 发表于 2014-10-17 08:58:17 | 显示全部楼层
zzyong00 发表于 2014-10-16 20:10
建议*DOC*做函数,这样什么时候调用都是当前的DOC
(defun *DOC* ()
  (VL-LOAD-COM)

不错的想法,也可定义为常量
(setq *DOC*   (vla-get-ActiveDocument *ACAD*))http://bbs.mjtd.com/thread-96543-1-1.html
 楼主| 发表于 2014-10-17 09:11:56 | 显示全部楼层
vectra 发表于 2014-10-16 16:38
用下面的代码简单测试了下

执行test 同时打印出1 和2,是不是两个*error*都调用 了?

点评

请再试下 我这里只返回2  发表于 2014-10-17 09:14
发表于 2014-10-17 16:53:57 | 显示全部楼层
关于error函数,虽然经过反复研究,还是没有找到使用的精髓;问问楼主,我的程序如果函数相互调用比较频繁,调试时如何找到错误函数位置?有些是逻辑错误,有些是空值,有些是类型错误。如何能够出错时,报告时在哪一个函数出错的呢?

点评

参考面包屑  发表于 2014-10-21 08:41
;;2.1.1 写在开头,错误处理反跟踪,找出调试错误所在。调试完毕后,可注释掉  发表于 2014-10-18 08:10
发表于 2014-11-9 20:26:55 | 显示全部楼层
收藏了,谢谢楼主!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-22 21:23 , Processed in 0.178633 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表