C++ ポインターの利点とメリット

1. ポインターを使用すると、より簡潔な方法で大規模なデータ構造を参照できます。

プログラムのデータ構造は、整数、浮動小数点、文字、列挙型などの原子レベルのデータ構造から、分子レベルの配列および構造 (「レコード」とも呼ばれる)、キュー、スタック、リンク リスト、ツリーまで多岐にわたります。など、データ構造がどれほど複雑であっても、データ構造は常にコンピューターのメモリ内に配置されるため、アドレスが必要です。メモリ アドレスは内部的には整数として表現されるため、ポインタを使用するとアドレスを完全な値の短縮表記として使用できるようになります。データ構造自体が大きい場合、この戦略によりメモリ領域を大幅に節約できます。

2. ポインターを使用すると、プログラムのさまざまな部分でデータを共有できるようになります。

共有メモリと同様に、ある関数から別の関数にデータ値のアドレスを渡すと、両方の関数で同じデータを使用できます。

3. ポインタを使用すると、プログラム実行中に新しいメモリ空間を予約できます。

ほとんどの場合、プログラムによって使用されるメモリは、明示的な宣言によって変数に割り当てられたメモリ (つまり、静的メモリ割り当て) であることがわかります。これは、コンピュータが必要な変数に事前にメモリを割り当てることができるため、コンピュータのメモリを節約するのに役立ちます。ただし、多くのアプリケーションでは、プログラムの実行中にどれだけのメモリが必要になるかが明確ではない場合があります。この場合、ポインタを使用して、プログラムが実行中に新しいメモリ領域を取得できるようにすることができます (実際には動的メモリ割り当てである必要があります)。 、ポインタがこのメモリを指すようにすると便利です。

4. ポインタを使用してデータ項目間の関係を記録できる

高度なプログラミング アプリケーションでは、ポインターは個々のデータ値間の関係を構築するために広く使用されています。たとえば、プログラマは、2 つのデータ項目間の概念的な順序関係を示すために、最初のデータの内部表現に次のデータ項目 (実際にはリンク リスト) へのポインタを含めることがよくあります。

その他のオンライン関連のポインタは、次のような利点をもたらします。

(1) プログラムのコンパイル効率と実行速度が向上し、プログラムがより簡潔になります。

(2) 呼び出された関数はポインタを介して呼び出し元の関数に通常の戻り値以外のデータを返すことができ、双方向の通信を実現します。

(3) ポインタを使用して動的メモリ割り当てを実現できます。

(4) ポインタは、さまざまな複雑なデータ構造を表現および実装するためにも使用されるため、より高品質なプログラムを作成するための基礎が築かれます。

(5) ポインタを使用してメモリアドレスを直接操作できるため、アセンブリ言語と同様の作業が可能です。

(6) 関数の記述と呼び出しが容易になる


Lingsheng Academy のプロジェクト クラスをお勧めします。個人的には先生の教え方が上手だったと思います。共有したいと思います:
Lingsheng Platinum Learning Card (インフラストラクチャ/高性能ストレージ/golang クラウド ネイティブ/オーディオとビデオ/Linux カーネルを含む)
https://xxetb.xet .tech/s/VsFMs

おすすめ

転載: blog.csdn.net/qq_40135848/article/details/133577486