holmes4:
However object are created on the heap and need to be expilcitly destroyed before they go out of scope. If you don't when the heap is used up.
Only if you use new or malloc. While some classes do call those internally (most notably String), most should not.