
"Bob Bell" <belvis@pacbell.net> wrote in message news:loom.20050427T231515-202@post.gmane.org... | > the first reason must be its damn expensive without move-semantics. | | So is std::vector<std::map<std::vector<std::string>, std::set<int> > >, | std::vector<int> >. Should the standard library prevent users from using | copy construct/copy assignment syntax with this data structure? good question. I'm pretty sure that performace does prevent you from using such a beast; so why bother ask the question. | > the second reason is that value-based and OO programming are different and are | > best | > kept seperate; there are different idioms, different parts of the langauge is | > being used. | | How do you know ptr_containers will be used in OO contexts? Why can't a user | use such containers to simply keep track of values? he might; but the library is designed for use with OO; just like the "STL" is not really designed for OO. making it better at one thing, makes it worse at another thing; you can't have both; that's life. | One of the great strengths of C++ is that it doesn't try to force the | programmer into any one programming paradigm. Your justification for | denying ordinary copy syntax is against this spirit. so you would be against scoped_ptr being not copyable? besides, there is no direct connection between what C++ allows you and what a library written in C++ allows you. -Thorsten