Boost logo

Boost :

From: John Maddock (john_at_[hidden])
Date: 2004-01-21 06:42:49


> They are directly and explicitly included by Serialization library.

Then your code will fail to compile with conforming compilers - those
headers do things like:

#include <math.h>

namespace std {

using ::acos;
using ::cos;
using ::fmod;
using ::modf;
using ::tan;
// etc

}

But conforming compilers will already have those symbols declared in
namespace std, so you will get a compile error! In addition, you needlessly
pollute the contents of the global namespace with the contents of math.h as
well.

Normally boost libraries check for BOOST_NO_STDC_NAMESPACE:

#ifdef BOOST_NO_STDC_NAMESPACE
namespace std{ /* make available what we actually use here */ }
#endif

John.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk