I like to use it for clarification, as when accessing members that were inherited. It reminds the reader where the variable came from if you don't have a naming convention that conveys that information.
You must use the this pointer when:
- Returning the current object.
- Setting up relations between objects (passing
this
into a constructor or setter)
- Checking for self reference:
this != argPtr