Lisp-returning-values-functions
提供:Dev Guides
LISP-値を返す関数
デフォルトでは、LISPの関数は、戻り値として評価された最後の式の値を返します。 次の例でこれを示します。
例1
main.lispという名前の新しいソースコードファイルを作成し、次のコードを入力します。
(defun add-all(a b c d)
(+ a b c d)
)
(setq sum (add-all 10 20 30 40))
(write sum)
(terpri)
(write (add-all 23.4 56.7 34.9 10.0))
あなたがコードを実行すると、それは次の結果を返します-
100
125.0
ただし、 return-from 特殊演算子を使用して、関数から値をすぐに返すことができます。
例2
main.lispという名前の新しいソースコードファイルを作成し、その中に次のコードを入力します-
(defun myfunc (num)
(return-from myfunc 10)
num
)
(write (myfunc 20))
あなたがコードを実行すると、それは次の結果を返します-
10
コードを少し変更します-
(defun myfunc (num)
(return-from myfunc 10)
write num
)
(write (myfunc 20))
それはまだ返します-
10