以下では、const参照が非constオブジェクトに使用される前に一時オブジェクトが作成されますか?非constオブジェクトへのconst参照
const int y = 2000;
const int &s = y // ok, const reference to const object.
int x = 1000;
const int &r = x; // any temporary copy here?
この場合、どのように動作しますか?
const int z = 3000;
int &t = z // ok, why can't you do this?
を述べた最初のケースのようにする必要があり、r' 'の値を変更することができ、 'const'。 – avakar
通常、コンパイラは単純なポインタで参照を実装します。 –
@quant_dev OPのサンプルでは、 'x'を記述するソースコードと' r'を記述するソースコードは同じマシンコードにコンパイルされます。ポインタは関与していません(見たすべてのコンパイラで)。それはとにかく関連しているわけではありません。 – Cubbi