std::string et la chaîne de format

J'ai trouvé le code ci-dessous par le biais de Google. Il ne fait presque ce que je veux faire, mais il ne fournit pas un moyen pour indiquer la précision like '%.*f' t en C de type chaînes de format. Aussi, il ne fournit pas de rien au-delà de 5 décimales. Vais-je avoir à coller avec chaînes C et snprintf?

#include <string>
#include <sstream>
#include <iostream>

template <class T>
std::string to_string(T t, std::ios_base & (*f)(std::ios_base&))
{
  std::ostringstream oss;
  oss << f << t;
  return oss.str();
}

int main()
{
  std::cout<<to_string<double>(3.1415926535897931, std::dec)<<std::endl;
  return 0;
} 
InformationsquelleAutor Scott | 2009-10-15