How can I set float precision?

I have fixed previous floating point accuracy issues using std:setprecision from c++.
This tends to be on a case by case basis though and I have yet to do a global change in the engine as I think I will break too much along the way. Anyway here is the c++ page for a fix.

http://www.cplusplus.com/reference/iomanip/setprecision/

Code

// setprecision example
#include <iostream>     // std::cout, std::fixed
#include <iomanip>      // std::setprecision

int main () {
  double f =3.14159;
  std::cout << std::setprecision(5) << f << '\n';
  std::cout << std::setprecision(9) << f << '\n';
  std::cout << std::fixed;
  std::cout << std::setprecision(5) << f << '\n';
  std::cout << std::setprecision(9) << f << '\n';
  return 0;
}

Output

3.1416
3.14159
3.14159
3.141590000