为所有流设置默认精度的方法

时间:2012-04-09 11:11:03

标签: c++ global iostream precision

您好我正在尝试找出是否有办法设置ofstreams的默认精度。 为了澄清,我可以设置我已经定义的流的精度没有问题。我只是找不到一种方法来实现它所以当我创建一个ofstream时它默认具有这种精度。 提前谢谢。

1 个答案:

答案 0 :(得分:3)

也许通过派生自己的ofstream版本,在其构造函数中设置精度:

#include <fstream>

struct my_ofstream : std::ofstream {
    explicit my_ofstream(std::streamsize prec = 5)
    {
        this->precision(prec);
    }
};

int main()
{
   my_ofstream f1;  // default precision 5
   my_ofstream f2(10);
}