up:: Cpp
source:: C++ 参照【関数におけるポインタ渡しと参照渡しの違い】
source:: 実践C++入門講座16回目 参照、それはポインタと同じ?違う? | Theolizer®

参照はあくまで変数のエイリアスであり、ポインタはアドレス。
参照にNullはない。そのためローカル変数を外から参照することは理論上可能。今ならコンパイラで弾かれるだろうけど。

最大の差は関数を使うときに引数が書き換えられる可能性が分かる、という点。