永发信息网

LISP 如何清除内存中的变量

答案:4  悬赏:0  手机版
解决时间 2021-02-04 00:12
  • 提问者网友:酱爆肉
  • 2021-02-03 07:37
LISP 如何清除内存中的变量
最佳答案
  • 五星知识达人网友:往事埋风中
  • 2021-02-03 08:33
一是要养成良好的编程习惯,程序中用到的变量要放到参数表里去,如(DEFUN C:TEST(/ 用到的变量列表);
二是可以在程序中用 (SETQ 变量名 NIL)这样的方式清除内存中的内容;创建的VLA对象最后要用VLAX-RELEASE-OBJECT函数释放。
全部回答
  • 1楼网友:由着我着迷
  • 2021-02-03 10:50
autolisp么?直接命名立即使用就行,lisp貌似没有变量名冲突这一说,新定义一个已有的变量,自动就把前面变量给顶了。
  • 2楼网友:鸠书
  • 2021-02-03 09:50
你好! lisp里采用较高级的垃圾收集机制. 既使你把变量置空, 内部的symble也未必立即得到回收, 基本上不要需要考虑这些底层的问题. lisp的优化主要放在算法上. 尽量利用函数式编程. 仅代表个人观点,不喜勿喷,谢谢。
  • 3楼网友:行路难
  • 2021-02-03 08:44
强烈建议使用局部变量,最大限度减少全局变量。如果想清空全局变量,则可以使用(setq 变量 nil)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯