我想做类似的事情
foo[OptionsPattern[]] := OptionValue[b]
Options[foo] = {a -> 0, b :> OptionValue[a]};
foo[a -> 1]
并让 Mathematica 给我1
,而不是0
. 有没有比这更好的方法
foo[OptionsPattern[]] := (
Options[foo] = {a -> 0, b :> OptionValue[a]};
OptionValue[b]
)
foo[a -> 1]
?
一方面,foo
在每次通话中设置选项的效率很低,尤其是在foo
有很多选项的情况下。