In java and objective-c, a variable representing an object is generally a pointer to that object. However, it seems that in C++, it\'s common to have non-pointer types hold
You have that right.
Indeed, that's how it works. A pointer stores the memory address of a variable.
When you pass a pointer (to an object) for a function as a parameter, it means that function will have access to that object through it's memory address instead of a new object being created on the stack.
Check this thread for more info on pointers.