R
Raf256
Hi,
how to convert following C++ code:
foobar *ptr = new foobar(5);
//...
if (something()) ptr = NULL;
if (!ptr) return no_object_is_selected_apparently;
// ...
if (!ptr) throw oh_shit_no_object; // ?!
else ptr->Fun();
...using weak_ptr and shared_ptr.
Something like...
// 1)
shared_ptr<foobar) ptr( new foobar(5) );
if (something) pre.reset();
if (!ptr) return no_object_is_selected_apparently;
if (!ptr) throw oh_shit_no_object;
else ptr->Fun();
// 2)
weak_ptr<foobar) ptr( new foobar(5) );
if (something) pre.reset();
if (ptr.expired()) return no_object_is_selected_apparently;
ptr.lock()->Fun(); // lock will throw if needed
Is the code above o.k.?
how to convert following C++ code:
foobar *ptr = new foobar(5);
//...
if (something()) ptr = NULL;
if (!ptr) return no_object_is_selected_apparently;
// ...
if (!ptr) throw oh_shit_no_object; // ?!
else ptr->Fun();
...using weak_ptr and shared_ptr.
Something like...
// 1)
shared_ptr<foobar) ptr( new foobar(5) );
if (something) pre.reset();
if (!ptr) return no_object_is_selected_apparently;
if (!ptr) throw oh_shit_no_object;
else ptr->Fun();
// 2)
weak_ptr<foobar) ptr( new foobar(5) );
if (something) pre.reset();
if (ptr.expired()) return no_object_is_selected_apparently;
ptr.lock()->Fun(); // lock will throw if needed
Is the code above o.k.?