Right. One of the reasons to use new is because the lifetime of the object created exists outside of all scopes. It doesn't get destroyed until you explicitly destroy it (with delete).
1 2 3 4 5 6 7 8 9 10
} // A's (obj) destructor is called here, as you'd expect
} // A*'s destructor gets called here (read: A*'s, NOT A's)
Notice that in the second situation, it's the pointer that is going out of scope, not the object. In that case the pointer's destructor that occurs, not the object's destructor. (But of course, a pointer's destructor does nothing)