Cplusplus-cpp-references

提供:Dev Guides
移動先:案内検索

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 Concept & Description
1

References as Parameters

C ++は、パラメーターよりも安全に関数パラメーターとして参照を渡すことをサポートしています。

2

Reference as Return Value

他のデータ型と同様に、C ++関数から参照を返すことができます。