我即将潜入autolisp,我想知道如何编写与尽可能多的不同版本的autocad兼容的代码,显然包括当前的代码,但理想情况下可以延伸到2000年。
Autodesk在http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=770225上有一个常见问题解答,但在2009年之前没有提及任何内容。
我应该使用哪个版本的(i)autocad和(ii)autolisp编译器?另外,这与visual lisp相同吗?
答案 0 :(得分:2)
我不同意第一张海报。您希望确保所有内容都适用于全新版本,然后将其调整为较旧版本。大多数使用Autocad并在经济衰退中幸存下来的公司都是这样做的,因为他们跟上了。
答案 1 :(得分:2)
AutoLisp是解释的,而不是编译的,因此没有不同的编译器可供选择(尽管有一个选项可以将它们编译为.fas文件,但大多数时候你不会打扰)。
VisualLisp是AutoLisp语言的扩展,它允许您以与使用VBA相同的方式访问对象模型,仅使用AutoLisp。如果您使用以vl-或vla-开头的内置函数,那么您已经在使用VisualLisp。
兼容性主要是仅使用在所有版本中都相同的功能。
但是,这并不总是要计划,您可能必须创建一些特定于版本的文件,这些文件最后加载并重新定义某些函数以使用该特定版本(您可以轻松地告诉哪个版本正在加载lisp的AutoCAD。
答案 2 :(得分:1)
在你的情况下,年龄越大越好。您应该使用2000版本。但我不确定它是否适用于现代操作系统。
答案 3 :(得分:1)
好消息是,我自1994年以来在AutoLISP中编写的程序大多数仍在进行,而且只有很少的变化。以下是您可能会考虑的一些事项: