Just a quick question:
Do I need to delete a pointer if I haven't actually assigned a new value to it?
What I've done if created a pointer and then handed it a reference to something like so:
Planet *planetPointer;
planetPointer = &earth;
Do I need to delete this pointer or can I just set it to null?
You don't need to delete it, and, moreover, you shouldn't delete it. If earth
is an automatic object, it will be freed automatically. So by manually deleting a pointer to it, you go into undefined behavior.
Only delete
what you allocate with new
.