12345
#include <boost/lexical_cast.hpp> string str = "3.14"; try { double d = boost::lexical_cast<double>( str ); } catch( boost::bad_lexical_cast const& ) {}