函数定义 何志丹 (defun <sym> <argument list> <exprt1> <exprt2> <exprt3> <exprt4> ... <exprtN> ) 1,defn仅仅查看一下自变量并建立一个函数定义。 2,<sym>为所定义函数的名称,它必须为符号原子。在程序调入内存,产生一个函定义之后,<sym>将被放到原子表ATOMLIST中。 3,<argument list>是一个函数的参数表,先形参,再局部变量,中间以/分开。 4,<expr1>....是任意S-表达式,它们甚至可以是所定义的函数自身调用。
函数的调用 和系统函数调用形式一样,用户定义的函数也是把函数名作为求值的第一个元素,实参作为其它元素,局部变量:出现在函数定义表中的变量为局部变量。 对一函数来说,出现在函数体中的除局部约束变量外,任何变量都是全局变量。
注意: 1,函数名相同,则被覆盖。 2,defun定义的函数实质上是一个被AutoLisp加上标记的表,函数名为该表的名,故可以用定义表的方式定义函数。
LAMBDA定义无名函数,与defun完全相同,只是没有函数名。 
|