tôi muốn làm một cái gì đó giống nhưLàm cách nào để nhận các tùy chọn phụ thuộc lẫn nhau?
foo[OptionsPattern[]] := OptionValue[b]
Options[foo] = {a -> 0, b :> OptionValue[a]};
foo[a -> 1]
và có Mathematica cho tôi 1
, thay vì 0
. Có cách nào tốt hơn để thực hiện việc này hơn
foo[OptionsPattern[]] := (
Options[foo] = {a -> 0, b :> OptionValue[a]};
OptionValue[b]
)
foo[a -> 1]
?
Đối với một điều, việc đặt tùy chọn foo
là không hiệu quả, đặc biệt nếu foo
có nhiều tùy chọn.
trùng lặp câu hỏi: [Định nghĩa một hàm với một giá trị tùy chọn đó là theo mặc định một chức năng của một paramether của hàm trong Mathematica] (http://stackoverflow.com/q/7394113/211232) – WReach