
Loïc Joly wrote:
Michael Marcin a écrit :
Then take for instance boost/shared_ptr.hpp and add
BOOST_MSVC_FAST_SWAP_OPTIMIZATION( boost::shared_ptr, T )
I was under the impression that with VC9 SP1, boost::shared_ptr would just be an alias to std::tr1::shared_ptr. Am I wrong ?
The boost shared_ptr has a different implementation and some extensions that the tr1 shared_ptr doesn't have. Like make_shared for instance. I have code that uses a lot of boost::shared_ptr and there are some things that are just broken in vc9's tr1 implementation. You can't store tr1 functions in a std::container for instance because of a bug. I would really like to get the no copy no throw container manipulation for things like boost::function and boost::shared_ptr and all it takes is a simple trait specialization. I could do these myself in a precompiled header or something but they seem like optimizations that are so trivial and useful that they should go into boost so everyone can benefit from them. Thanks, Michael Marcin