setprecision for boost :: program_options

时间:2012-02-15 23:38:20

标签: c++ boost boost-program-options

有没有办法改变boost :: program_options如何格式化program_options::options_description帮助文本中的选项的默认值(可以通过cout << description获得)?特别是我的默认值是浮点数,因此通常的十进制到二进制转换为我提供了一个看起来像--arg (0.100000001)的帮助文本,这非常难看。

使用cout << setprecision(4)不起作用,因为program_options <<将自身默认值设置为某些内部流以进行格式化(至少这是我通过查看源代码推断的内容)得到<<'到cout的内容是结果字符串(流?)。

感谢。

1 个答案:

答案 0 :(得分:5)

致电the two-argument version of default_value。然后,您可以指定值的字符串版本,然后打印而不是尝试使用<<打印给定值。