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言語