Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 参照とポインタの違い | 参照の基礎
C++ポインタと参照

book参照とポインタの違い

メニューを表示するにはスワイプしてください

参照とポインタは、変数の値への間接的なアクセスを提供します。ただし、いくつかの重要な違いがあり、それぞれに長所と短所があります。

構文

  • ポインタは * 記号を使って宣言します。

  • 参照は & 記号を使って宣言します。

初期化

空の参照は宣言できません。しかし、nullptr を使って空のポインタを宣言することは可能です。

再代入

参照は再代入できず、別のオブジェクトを参照することはできません。

main.cpp

main.cpp

copy
12345678910111213
#include <iostream> int main() { int x = 125, y = 500; // creating a reference to x variable int& ref_x = x; ref_x = y; // attempt to re-assigned ref_x ref_x = 0; std::cout << x << ' ' << y; }

ポインタは再代入が可能で、異なるメモリアドレスを指すことができます。

main.cpp

main.cpp

copy
12345678910111213
#include <iostream> int main() { int x = 125, y = 500; // creating a pointer to x variable int* ptr = &x; ptr = &y; // attempt to re-assigned ref_x *ptr = 0; std::cout << x << ' ' << y; }

値へのアクセス

ポインタが指す値にアクセスするには、参照外し演算子 * を使用。参照の場合、特別な演算子は不要で、参照変数をそのまま使用。

ポインタと参照はどちらもメモリ管理において重要であり、プログラムの柔軟性に寄与。使用方法は状況に依存

question mark

ポインタは別の変数を指すように再代入できるが、参照はできないことを正しく示しているコードスニペットはどれですか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 3.  3

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 3.  3
some-alt