Есть ли способ изменить способ, которым boost :: program_options форматирует значение по умолчанию для параметров в тексте справки program_options::options_description
(который можно получить с помощью cout << description
)?В частности, у меня есть значения по умолчанию, которые являются числами с плавающей точкой, поэтому обычное десятичное преобразование в двоичное дает мне текст справки, который выглядит как --arg (0.100000001)
, что довольно уродливо.
Использование cout << setprecision(4)
не работает, потому чтоprogram_options <<
сам использует значения по умолчанию для некоторых внутренних потоков, чтобы сначала выполнить форматирование (по крайней мере, это то, что я понял, посмотрев на исходный код), и то, что <<
'ред cout
, является результатомстрока (поток?).
Спасибо.