回答編集履歴
1
変換だけど型の変換ではないので型変換という言葉を改め
answer
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
整数リテラル (を評価した結果) が右辺値であるというのは正しい理解です。 原則として右辺値は完結式の終わりに解体されてしまうのでそれを指していたポインタや参照は無効になります。
|
|
2
2
|
|
|
3
|
-
しかし例外があるのです。 `int&` は通常は左辺値しか束縛できませんが `const` が付くと左辺値も右辺値も束縛できて、参照に束縛された右辺値は参照の寿命が尽きるまで寿命が延長されるという特別扱いがあります。 また、左辺値参照も右辺値参照も左辺値ですので実質的に左辺値に
|
|
3
|
+
しかし例外があるのです。 `int&` は通常は左辺値しか束縛できませんが `const` が付くと左辺値も右辺値も束縛できて、参照に束縛された右辺値は参照の寿命が尽きるまで寿命が延長されるという特別扱いがあります。 また、左辺値参照も右辺値参照も左辺値ですので実質的に左辺値に変換されたかのように考えてもよいんじゃないかと思います。
|