With floating point types std::to_string may yield unexpected results as the number of significant digits in the returned string can be zero, see the example.
std::to_string() may return zero for small floating point numbers
(results are similar to what std::printf() with a "%f" format specifier would have printed).