CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 文档中心

关于在 AutoLISP 和 ObjectARX 应用程序之间传递选择集(AutoLISP)

2023-1-8 11:15| 发布者: admin| 查看: 694| 评论: 0|来自: AutoCAD

在 AutoLISP 和 ObjectARX 应用程序之间传递选择集时,应注意以下事项:

如果在 AutoLISP 中创建了一个选择集并存储在 AutoLISP 变量中,然后被从 ObjectARX 应用程序返回的值覆盖,则原始选择集符合垃圾回收条件(在下一次自动或显式垃圾回收时释放)。

即使从 ObjectARX 应用程序返回的值是原始选择集,也是如此。在以下示例中,如果 ObjectARX 函数返回作为参数馈送的相同选择集,则此选择集将有资格进行垃圾回收,即使它仍分配给同一变量。 adsfunc

(setq var1 (ssget))
(setq var1 (adsfunc var1))

如果希望保护原始选择集免受垃圾回收,则不得将 ObjectARX 应用程序的返回值分配给已引用该选择集的 AutoLISP 变量。更改前面的示例会阻止引用的选择集符合垃圾回收条件。var1

(setq var1 (ssget))
(setq var2 (adsfunc var1))

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1   苏公网安备32011402011833)

GMT+8, 2024-12-15 14:26

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部