ポインターと参照の違い

著者: Laura McKinney
作成日: 1 4月 2021
更新日: 1 J 2024
Anonim
【13分で解説】丁寧に学ぶC++入門 ⑩【ポインタ】
ビデオ: 【13分で解説】丁寧に学ぶC++入門 ⑩【ポインタ】

コンテンツ


「ポインタ」と「参照」は両方とも、別の変数を指すまたは参照するために使用されます。しかし、両者の基本的な違いは、ポインター変数が、メモリー位置が格納されている変数を指すことです。参照変数は、それに割り当てられる変数のエイリアスです。以下の比較表は、ポインターと参照のその他の違いを示しています。

  1. 比較表
  2. 定義
  3. 主な違い
  4. 結論

比較表

比較の基礎ポインタ参照
ベーシックポインターは変数のメモリアドレスです。参照は変数のエイリアスです。
返品ポインター変数は、ポインター記号*が前に付いた、ポインター変数に格納されているアドレスにある値を返します。参照変数は、参照記号&が前に付いた変数のアドレスを返します。
オペレーター *, ->&
ヌル参照ポインター変数はNULLを参照できます。参照変数はNULLを参照できません。
初期化 初期化されていないポインターを作成できます。初期化されていない参照は作成できません。
初期化の時間ポインター変数は、プログラムの任意の時点で初期化できます。参照変数は、作成時にのみ初期化できます。
再初期化ポインター変数は、必要な回数だけ再初期化できます。参照変数は、プログラム内で再び再初期化することはできません。

ポインターの定義

「ポインタ」は、別の変数のメモリ位置を保持する変数です。ポインター変数で使用される演算子は*および->です。ポインター変数の宣言には、基本データ型の後に「*」記号と変数名が続きます。


タイプ* var_name;

例の助けを借りて、ポインターを理解しましょう。

int a = 4; int * ptr =&a; cout <に対して、参照演算子は&です。

  • ポインター変数は、変数のアドレスを持たない場合、nullを指します。一方、参照変数はNullを参照できません。
  • ユニタライズされたポインター変数はいつでも作成できますが、変数のエイリアスが必要な場合は参照を作成するため、ユニタライズ参照を作成することはできません。
  • ポインターを再初期化することはできますが、参照を初期化すると、再度初期化することはできません。
  • 空のポインターを作成していつでも初期化できますが、参照を作成する場合にのみ参照を初期化する必要があります。
  • 注意:

    Javaはポインターをサポートしていません。

    結論

    ポインターと参照の両方は、別の変数を指すまたは参照するために使用されます。ただし、どちらも使用方法と実装方法が異なります。