C++ リファレンス
参照変数はエイリアス、つまり、既存の変数の別の名前です。参照が変数で初期化されると、変数名または参照名を使用して変数を参照できます。
参照とポインタ
参照はポインターと混同されることがよくありますが、参照とポインターの主な違いは次の 3 つです。
- <リ>
NULL 参照を持つことはできません。参照が正当なストレージに接続されていることを常に想定できる必要があります。
<リ>オブジェクトへの参照が初期化されると、別のオブジェクトを参照するように変更することはできません。ポインターはいつでも別のオブジェクトを指すことができます。
<リ>参照は作成時に初期化する必要があります。ポインタはいつでも初期化できます。
C++ での参照の作成
変数名は、メモリ内の変数の場所に付けられたラベルと考えてください。参照は、そのメモリ位置に付けられた 2 番目のラベルと考えることができます。したがって、元の変数名または参照のいずれかを使用して、変数の内容にアクセスできます。たとえば、次の例があるとします-
int i = 17;
i の参照変数を次のように宣言できます。
int& r = i;
これらの宣言の &を 参照 として読んでください .したがって、最初の宣言は「r は i に初期化された整数参照です」と読み、2 番目の宣言は「s は d に初期化された二重参照です」と読みます。次の例では、int と double の参照を使用しています -
ライブデモ
#include <iostream>
using namespace std;
int main () {
// declare simple variables
int i;
double d;
// declare reference variables
int& r = i;
double& s = d;
i = 5;
cout << "Value of i : " << i << endl;
cout << "Value of i reference : " << r << endl;
d = 11.7;
cout << "Value of d : " << d << endl;
cout << "Value of d reference : " << s << endl;
return 0;
}
上記のコードを一緒にコンパイルして実行すると、次の結果が生成されます −
Value of i : 5 Value of i reference : 5 Value of d : 11.7 Value of d reference : 11.7
参照は通常、関数の引数リストと関数の戻り値に使用されます。したがって、以下は、C++ プログラマーにとって明確なはずの C++ 参照に関連する 2 つの重要な主題です -
| Sr.No | コンセプトと説明 |
|---|---|
| 1 | パラメータとしての参照 C++ は、パラメーターよりも安全に参照を関数パラメーターとして渡すことをサポートしています。 |
| 2 | 戻り値としての参照 他のデータ型と同様に、C++ 関数から参照を返すことができます。 |
C言語