From: Ralf W. Grosse-Kunstleve (rwgk_at_[hidden])
Date: 2006-03-10 02:25:39
--- Howard Hinnant <howard.hinnant_at_[hidden]> wrote:
> > Note that I don't want reference counting overhead (shared_array)
> > or the
> > overhead associated with std::vector (two pointers instead of just
> > one, default
> > construction on resize or lots of push_backs, deepcopy semantics).
> Point your vendor at:
> and tell them you want it sooner rather than later.
Thanks for the link! unique_ptr looks like the best general solution. Problem
is, I needed it yesterday (literally) and in fact I would have loved to use it
many times before.
If auto_ptr is going to be deprecated, of course auto_array shouldn't be in
boost. How about this tiny patch then to keep poor old scientific application
developers like me going until the optimal solution is universally available?
RCS file: /cvsroot/boost/boost/boost/scoped_array.hpp,v
retrieving revision 1.16
diff -u -r1.16 scoped_array.hpp
--- scoped_array.hpp 19 Aug 2004 15:23:46 -0000 1.16
+++ scoped_array.hpp 10 Mar 2006 07:12:35 -0000
@@ -37,10 +37,12 @@
template<class T> class scoped_array // noncopyable
T * ptr;
scoped_array(scoped_array const &);
scoped_array & operator=(scoped_array const &);
Those in danger of abusing release() most likely won't notice that they can
inherit, implement release() in the sub-class, and only then start abusing. But
I'd be a happy chap because I wouldn't have to copy scoped_array.hpp wholesale.
BTW: The scoped_ptr FAQ should be changed to point to the unique_ptr page.
Otherwise people like me will keep thinking auto_ptr is a good thing.
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk