> What I don't understand is > why he doesn't just return "grp" and let it call the copy ctor.
In the example you cited, I could've done as you suggest. But as you and Robert already discussed, this wouldn't work if the return type were a ref_ptr to a base class of Group. I figure there are two types of programmers: those who know C++ and can spin up on things like ref_ptr in a matter if a few minutes just by glancing at the code, and those who aren't so experienced and need some hand holding. To address the needs of the latter group, the section on ref_ptr could have been an entire chapter unto itself. To keep the book short and affordable, I decided to give them a set of short but "safe" instructions that would keep them out of trouble when using ref_ptrs. Exploring all of ref_ptr's ins and outs is left as an exercise to the reader. (There are, of course, multiple ways to return ref_ptr memory from a function. If I update the book, I'll consider recommending release(), for example.) Thanks for reading the book. Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com +1 303 859 9466 _______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org