|
Posted by Summercool on 09/28/07 15:30
First of all, I think in the very traditional and basic form of
"reference", it means "pointers".
So that's why in C,
when you say
int *ip;
i is a pointer or "reference" to an integer. and that's why when you
use it to get back the integer, you need to do *ip and that's called
"dereference".
So in C++, it seems that there is a different kind of reference, and
that's like an alias type of reference? So in C++, Java, and PHP, you
can have
int i = 10
int &j = i
printf "%d", j and you get 10?
j = 20
printf "%d %d", i, j and both are 20 now?
that's different from the traditional pointer reference
a = 10; b = 20
int *ip = &a // ip pointers to an integer
int *jp = ip // jp pointers to the same integer
printf "%d", *jp
*jp = 20
printf "%d %d", *ip, *jp
[Back to original message]
|