C++ において、const修飾子が付加されている参照型のことです。
通常の参照型では、参照先のオブジェクトの値を変更することができますが、const参照では値の変更が禁止されます。
int value {10};
int& ref {value}; // 通常の参照
ref = 20; // OK
const int& cref {value}; // const参照
cref = 20; // エラー。参照先の値を変更できない構造体のような大きなデータを関数に渡すとき、関数内でそのデータを変更する必要がない場合に、値のコピーを避けるために、仮引数を const参照にする方法がよく利用されます。通常の参照型でもパフォーマンスは向上する可能性がありますが、const を使うことによって、プログラムの安全性や可読性を向上することができます。
const参照の詳細な解説は、新C++編「関数を作る」のページを参照してください。
また、通常の参照は、lvalue に分類されるオブジェクトしか参照できませんが、const参照は rvalue を参照することもできます。C++11 で rvalueリファレンスが導入されるまで、rvalue を参照する手段として const参照が利用されました。
rvalue や rvalueリファレンスを含めた解説は、新C++編「オブジェクトのムーブ」のページを参照してください。
Programming Place Plus のトップページへ
| はてなブックマーク に保存 | Facebook でシェア | X で ポスト/フォロー |
| LINE で送る | noteで書く |
|
| 管理者情報 | プライバシーポリシー |