
Hi Ion, Thanks for the detailed answer.
(Me) There are some examples of containers requiring the value_type to support only the "defaut constructor + a swap() function". This is a concept I would really appreciate to see in boost.containers. In that case, I would very happily use this library. Otherwise I think I will stick with other containers classes.
Yes, default-contruct only types are supported in many operations, just like C++11 requires (say, resize(), emplace()...). I'll add this requirement to each function description.
Maybe I was not clear. What I meant was the same as the dlibc++ containers : being able to use a class like in the following example. //------------------------------------------------------// #include <boost/container/vector.hpp> #include <iostream> // defaut constructor, swap, and destructor are available, and other functions are hidden. class swapOnly { public: swapOnly():i(0){} void swap(swapOnly& p){ std::swap(p.i, i);} private: int i; swapOnly(const swapOnly&); swapOnly& operator=(const swapOnly&); }; int main() { boost::container::vector< swapOnly > swapOnlys(3); return 0; } //------------------------------------------------------// That is what I meant : a container able also to use only the value_type::value_type() and value_type::swap() function to implement its internal operations. This does not compile. As a consequence, I think such concept is not supported by boost.containers at the moment. What is your point of view on that matter ? Did I miss something? Best regards, Pierre Morcello -- View this message in context: http://boost.2283326.n4.nabble.com/boost-containers-remarks-and-questions-tp... Sent from the Boost - Dev mailing list archive at Nabble.com.