Ostatnio coraz bardziej zastanawiam się czym jest referencja. Czy ona różni się względem wskaźnika?
Można powiedzieć, że referencja to taki wskaźnik, który zlicza odwołania, ale w C++ też są inteligencje wskaźniki. To nadal wskaźniki, a nie referencje.
O ile wskaźnik pozwala wysłuskać adres, wspiera arytmetykę na wskaźnikach, umożliwia wyrażenie wskaźnika na wskaźnik, a referencja tak niezbyt.
O ile rozumiem, że obie konstrukcje służą po to, aby móc odwoływać się do czegoś co istnieje, ale tak nie rozumiem czemu tutaj mamy dwie osobne nazwy, jakby zupełnie co innego oznaczały..
W przypadku baz danych to jest prostsze do pojęcia, bo jak piszę w FK ze słowem "references" to wiem, że tu nie tylko chodzi o wskazanie (bo wskazać mógłbym w oparciu o sam surowy integer), ale również chodzi o zachowanie pewnego poziomu integralności, spójności w obrębie dokonywanych działań, blokad itp.
A wy jak to rozumiecie? Czy javowa referencja też dba o jakąś spójność? Może po prostu czegoś fundamentalnego jeszcze nie wiem :-)