• Advertisement

Archived

This topic is now archived and is closed to further replies.

scoped_ptr vs auto_ptr ... The same thing?

This topic is 5671 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I''m trying to ''get'' the use of scoped pointers and it seems to be awefully similar to an auto_ptr. Only one smart pointer can own the pointer at once. Copies transfer ownership. Is that right? Chris Brodie http:\\fourth.flipcode.com

Share this post


Link to post
Share on other sites
Advertisement
quote:
Original post by gimp
Copies transfer ownership.

Is that right?



Not quite - boost::scoped_ptr is noncopyable. According to the boost documentation:

"The primary reason to use scoped_ptr rather than auto_ptr is to let readers of your code know that you intend ''resource acquisition is initialization'' to be applied only for the current scope, and have no intent to transfer ownership."

You could use auto_ptr instead of scoped_ptr, but then it might look like you intend to transfer ownership at some point.

Share this post


Link to post
Share on other sites
auto_ptr transfers ownership on being copied.
scoped_ptr can''t be copied at all.

Share this post


Link to post
Share on other sites

  • Advertisement