独立した参照が存在し、エイリアシングのように機能することを、いくつかの優れたC++チュートリアルで読みました。しかし...それは何のために作られているのだろうか。エイリアシングを使用する必要があるのはなぜですか。
その上、私には明確ではないコードの一部:
int a;
int &ref = a; // independent reference
int b = 19;
ref = b;
cout << a << " " << ref << "\n";
ref--;
cout << a << " " << ref << "\n";
まず、refはaへの「参照」です。コードの2行目から、refのアドレス(したがってアンペアヘッド)がaであることがわかります。次に、整数refにb(19)の値が割り当てられます。最初のcoutは、両方とも19に等しいaとrefを返します。なぜですか?整数はrefのアドレスではありませんか?次に、refをデクリメントし、最後のcoutは18を2回与えます。aとrefはデクリメントされます。
ミステリーの奇妙な解釈のみ:ここでint&はそれ自体が型であり、「整数への独立した参照」であり、この型はエイリアシングを意味します。次に、refに対して何をするにしても、同じことがaに対して行われます。
そうですか?しかし、なぜエイリアシングが必要なのですか?