Quote:
I think another nuance to understand, is that references are not objects, but pointers are. I don't mean objects in an OOP sense, but rather in a storage sense. When you use the name of the pointer, you are referring to the pointer's place in memory, not the thing pointed to. For that, obviously you need the '*' to get to it. References are just a different name for something, and that is all. They are not a region of storage in their own right.
Conceptually true, though technically "it is unspecified whether or not a reference requires storage" (Paragraph 3, Section 8.3.2, 2003 edition of the C++ Standard).