Yes it really is.
You can have several (simple) pointers pointing to the same object. The question is how long these pointers are valid or when the object pointed to is deleted.
A unique_ptr stores another simple pointer and passes into the property, that is, it is responsible for the destruction of the object. Moving it to another unique_ptr just transfers the property, the object itself is the same, and all pointers to it indicate that they remain valid.
Only when the property is not transferred (or released) and the owner of unique_ptr destroyed, does it also destroy the object. This will be the moment when all simple pointers pointing to an object become dangling pointers and play them, will be illegal.
Daniel Frey
source share