After reading some tutorials I came to the conclusion that one should always use pointers for objects. But I have also seen a few exceptions while reading some QT tutorials
Use pointers when you don't want your object to be destroyed when the stack frame is emptied.
Use references for passing parameters where possible.