Skip to main content

コピーコンストラクターとは何ですか?

copyコピーコンストラクターは、C ++の特別な機能であり、C ++の影響を受ける他の言語は、コーディングオブジェクトをコピーします。プログラマーは、コピーコンストラクター宣言を追加し、オブジェクトを参照することにより、これを行います。主に、これは時間を節約することでプログラマに利益をもたらしますが、プログラマーがオブジェクトのコーディングを誤って入力しないことも保証します。コピーが作成された場合、別のメモリポインターが必要な場合、または元のオブジェクトが指しているのと同じセクションを指します。コピーコンストラクターを使用することの主な欠点の1つは、独立して機能できないことです。元のオブジェクトが消去された場合、コピーも同様になります。copyプログラマがコピーコンストラクターを使用すると、コードに既にリストされているオブジェクトをコピーするよう指示しています。これを行うには、プログラマーは最初に宣言を使用して、コピー機能を実行するようにコーディングに指示する必要があります。また、プログラマーは別のオブジェクトを参照する必要があるため、オブジェクトを既に構築する必要があります。または、コピーを実行する方法がありません。同じ関数を再タイプして再びコーディングする代わりに、プログラマーは参照を追加するだけでオブジェクトの準備ができています。これには、一貫した正確なコーディングに別の隠された利点があります。元のオブジェクトが正しくコード化されている限り、コピーされたオブジェクトには正しいコーディングもあります。これらの利点は両方とも複雑なオブジェクトで最も顕著ですが、プログラマーは単純なオブジェクトのコピーからも恩恵を受けることができます。これにより、特定の情報をメモリ内の場所、またはデータをどこに保存できるかを正確に伝えます。プログラマーは、コピーコンストラクターを使用するときに新しいメモリポインターを指定する必要があります。それ以外の場合、2つのオブジェクトは同じメモリ空間を使用します。表面的には、これは悪くないように見えるかもしれませんが、矛盾につながる可能性があります。たとえば、両方のオブジェクトが同じポインターを共有し、1つのオブジェクトを使用してローンアプリケーションを送信する場合、コピーされたオブジェクトがクレジットカードアプリケーションを送信するために作成された場合、すべてのクレジットカードアプリケーションはローンアプリケーションに保存されます。コピーコンストラクターオブジェクトは個別に機能できないため、オブジェクトの消去に注意してください。プログラマが元のオブジェクトを消去した場合、コピーされたオブジェクトには参照するものはありません。参照するコードがない場合、コピーされたオブジェクトはそのタスクを実行できず、役に立たなくなります。