|
Boost : |
From: John Maddock (john_at_[hidden])
Date: 2005-04-29 05:07:30
> I'm asking about all of your Boost.TR1, including shared_ptr etc., not
> just the math part.
There is no duplication of code, it's described here:
http://freespace.virgin.net/boost.regex/tr1/doc/html/tr1/implementation.html
But basically:
"When Boost.TR1 is configured to make use of your standard library's native
TR1 implementation, then it doesn't do very much: it just includes the
appropriate header.
When Boost.TR1 is using the Boost implementation of a particular component,
then it includes the appropriate Boost header(s) and imports the necessary
declarations in namespace std::tr1 with using declarations. Note that only
those declarations that are part of the standard are imported: the
implementation is deliberately quite strict about not including any
Boost-specific extensions in namespace std::tr1, in order to catch any
portability errors in user code. If you really need to use Boost-specific
extensions then you should include the Boost headers directly and use the
declarations in namespace boost:: instead. Note that this style of
implementation is not completely standards-conforming, in particular it is
not possible to add user-defined template specializations of TR1 components
into namespace std::tr1. There are also one or two Boost libraries that are
not yet fully standards conforming, any such non-conformities are documented
in the section called "TR1 By Subject". Hopefully, occurrences of
non-standard behavior should be extremely rare in practice however."
Clear now ?
John.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk