「Defun」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
編集の要約なし
 
編集の要約なし
1行目: 1行目:
{{AutoLISP}}
; 構文
; 構文
: (defun sym ([arguments] [/ variables...]) expr...)
: (defun sym ([arguments] [/ variables...]) expr...)

2013年7月12日 (金) 10:48時点における版

構文
(defun sym ([arguments] [/ variables...]) expr...)


機能
関数を定義する。
引数
  • sym : 関数名のシンボル。
  • arguments : 関数が受け入れる引数の名前。
  • / variables : 関数の1つまたは複数のローカル変数名。変数名の直前のスラッシュは、最初のローカル名とも、最後の引数(存在する場合)とも離れていなければならない。少なくとも 1 字分のスペースを入れる。
  • expr : 関数が実行されたときに評価される任意の数の LISP 式。
引数やローカル シンボルを 1 つも宣言しない場合は、関数名の次に空の括弧を入れる。
指定された引数またはシンボル名が重複している場合は、最初に現れたものが使用され、2 番目以降は無視される。
戻り値
最後に評価された式の結果。


  • 警告!
    defun 関数の sym 引数には、組み込み関数や定義済みシンボルの名前を使用してはならない。
    組み込み関数や定義済み関数の名前を使用すると、それらの定義が上書きされてしまい、それらの関数にアクセスできなくなる。
    組み込み関数および定義済み関数のリストを取得するには、atoms-family 関数を使用する。


サンプル
 (defun myfunc (x y) ...) 2 つの引数を持つ関数 
 (defun myfunc (/ a b) ...) 2 つのローカル変数を持つ関数 
 (defun myfunc (x / temp) ...) 1 つの引数と 1 つのローカル変数を持つ関数 
 (defun myfunc () ...) 引数もローカル変数もない関数