Here is an informal but simple way of thinking about it:
“A reference is a thing (that is to say, a value that you can assign to a variable, etc.) that refers to something else.”
You see, there are plenty of cases where we would like for a piece of data to be in two places at the same time. Maybe you’d like to send “a massively complicated data structure” from here to there without copying it. A reference can refer to anything.
Dress it up or dress it down ... it is a very simple concept that really is that simple. Start from there.
|