「Defun」の版間の差分
細編集の要約なし |
編集の要約なし |
||
6行目: | 6行目: | ||
; 機能 | ; 機能 | ||
: 関数を定義する。 | : 関数を定義する。 | ||
; 引数 | ; 引数 | ||
14行目: | 15行目: | ||
:: 引数やローカル シンボルを 1 つも宣言しない場合は、関数名の次に空の括弧を入れる。 | :: 引数やローカル シンボルを 1 つも宣言しない場合は、関数名の次に空の括弧を入れる。 | ||
:: 指定された引数またはシンボル名が重複している場合は、最初に現れたものが使用され、2 番目以降は無視される。 | :: 指定された引数またはシンボル名が重複している場合は、最初に現れたものが使用され、2 番目以降は無視される。 | ||
; 戻り値 | ; 戻り値 |
2020年1月25日 (土) 16:40時点における最新版
- 構文
- (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 () ...) 引数もローカル変数もない関数