A reference variable is a "reference" to an existing variable, and
it is created with the
string &meal = food; // reference to food
Now, we can use either the variable name
food or the reference name
to refer to the
string &meal = food;
cout << food << "\n"; // Outputs Pizza
cout << meal << "\n"; // Outputs Pizza
In the example above, the
& operator was used to create a reference variable.
But it can also be used to get the memory address of a variable, which is the
location of where the variable is stored on the computer.
When a variable is created in C++, a memory address is assigned to the variable. And when we assign a value to the variable, it is stored in this memory address.
To access it, use the
operator, and the result will represent where the variable is stored:
cout << &food; // Outputs 0x6dfed4
Note: The memory address is in hexidecimal form (0x..). Note that you may not get the same result in your program.
And why is it useful to know the memory address?
References and Pointers (which you will learn about in the next chapter) are important in C++, because they give you the ability to manipulate the data in the computer's memory - which can reduce the code and improve the perfomance.