王朝网络
分享
 
 
 

AutoLisp笔记(二)

王朝other·作者佚名  2006-01-08
宽屏版  字体: |||超大  

赋值与求值函数

何志丹

(SetQ <sym1> <exp1> [<sym2> <exp2>]...)

偶数位上的参数求值,并把求值的结果赋给前一个符号原子。SetQ 返回最后一个表达式的值。

注意:

1,SetQ是串行函数,即对前面的符号先赋值,后面的符号后赋值。

2,SetQ只是简单地加了一个内存指针,这个指针是从奇数位上的符号指向其后偶数位上的数据所指的内存数据。

例子:

(SetQ x 2.4 y (+ x 2.0)

返回值4.5

(Set <sym> <expr>)

Set函数把参数二的值赋给参数一的值,返回参数二的值。

例子:

(SetQ c "AB")

(SetQ d 'c)

(kSet D 2.0)

返回值为2.0,c的值为2.0

禁上求值函数Quote

(Quote <epxr>)

Quote函数的功能是阻止求值器对其参数求值,返回没有值的S-表达式。

例子:

(Quote (+ 6 5))

返回值是(+65)而不是11。

注意:

1,此函数的作用范围是紧跟其后的S-表达式。

2,单引号是简写,只能用在表达中,不能从键盘输入一个单引号引起来的表达式直接响应AutoCAD的命令提示。

3,(CDR (1 2 3))是错误的,为了求该表的CDR,求值器先到表(123)求值,求值器把1作为函数名,于是出错。

Function 函数

与Quote函数基本相同,当<expr> 为函数名时,Fuction就把该函数的局部变量约束到当前环境中。

如:

(apply (function +) '(2.0 4.0 5.5))

返回值11.5

再求值函数

(eval <expr>)

先对变量expr求值,把结果返回给eval,eval对它再次求值。

如:

(SetQ x '(* 5.0 6.0))

(eval x)

返回值30.0

小结:

1,在SetQ函数中符号名和SetQ中sym的值不能和AutoLisp的内部符号和内部函数名(在自带的编辑器中以不同的颜色显示)相同,否刚会使这引起些符号失去原有的意义。

2,Quote函数只能阻止对其后的S-表达式的一次求值,有时被阻止的表达式需要转化成调用被求值,可以用eval.

3,利用eval,我们可以把程序中用到的数据结构独立于程序。

如:

(SetQ datastr '(list x y z))

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有