Próbowałem sprawdzić poprawność moich przekazanych opcji za pomocą boost :: program_options. Moje polecenie ma kilka trybów, z których każdy ma przypisane parametry, które można określić. Co próbuję zrobić, to upewnić się te związane params zapadają trybie, tjZwiększanie opcji programu o wartości domyślne zawsze obecne podczas korzystania z vm.count()
unicorn --fly --magic-wings-threshold
Gdzie --fly
jest tryb i --magic-wings-threshold
jest związany param. Zauważyłem, że jeśli --magic-wings-threshold
ma wartość domyślną, np.
("magic-wings-threshold,w", po::value<double>(&wings_thresh)->default_value(0.8, "0.8"),
"Magic wings maximum power"
)
wtedy nie mogę korzystać
if (vm.count("magic-wings-threshold")({
// do stuff
}
wykryć, jeśli użytkownik przeszedł ten param.
Wygląda na to, że domyślne parametry wartości są zawsze przekazywane i wykrywane w vm.count()
. Czy ktoś zna obejście lub alternatywę?
Wszystkie jednorożce, które znam, nie fl y i nie mają skrzydeł. Być może myślałeś o Pegasusie? – flies