foo[OptionsPattern[]] := OptionValue[b]
Options[foo] = {a -> 0, b :> OptionValue[a]};
foo[a -> 1]
ような何かをするとMathematicaはなく0
の、私に1
を与えてきたいと思います。これを行うより良い方法はありますか?
foo[OptionsPattern[]] := (
Options[foo] = {a -> 0, b :> OptionValue[a]};
OptionValue[b]
)
foo[a -> 1]
?
特に、foo
に多くのオプションがある場合は、すべての呼び出しでfoo
というオプションを設定するのは非効率です。
重複質問:([デフォルトでMathematicaの機能の別のparametherの関数である任意の値を持つ関数の定義] http://stackoverflow.com/q/7394113/211232) – WReach