通过to_string()
没有办法改变精度,但是可以使用setprecision
IO操作符来代替:
#include <sstream>
template <typename T>
std::string to_string_with_precision(const T a_value, const int n = 6)
{
std::ostringstream out;
out.precision(n);
out << std::fixed << a_value;
return std::move(out).str();
}
iomanip
,只需使用out.precision(n); out << a_value;
。使用iomanip
甚至不会少打字。 - Ruslan