Subject: Re: [Boost-bugs] [Boost C++ Libraries] #9177: Improved serialization of floating point values
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-10-28 12:47:25
#9177: Improved serialization of floating point values
--------------------------------------+---------------------------
Reporter: johnmaddock | Owner: ramey
Type: Bugs | Status: closed
Milestone: To Be Determined | Component: serialization
Version: Boost Development Trunk | Severity: Problem
Resolution: fixed | Keywords:
--------------------------------------+---------------------------
Comment (by johnmaddock):
Ah, just looked at your updated code and there are a number of mistakes:
a) You mispelled my name.
b) It uses numeric_limits<float> which will clearly only work for type
`float` and not double, long double etc.
c) The formula for number of digits you use is suitable for base2 only.
d) You're still not outputting in scientific format - that results in one
less significant digit being printed (strange but true), and as a result
values do not always round trip.
e) I see you also removed the save-and-restore formatting options - that
may not matter frankly, but I thought it was a nicety to reset these at
the end of the procedure so that classes that have their own serialize
functions see whatever iostream flags were originally set in the stream by
the user.
I'm attaching a patch for these, plus to use
numeric_limits<>::max_digits10 when available.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/9177#comment:5> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC