C のプリミティブ データ型は、int、float、double など、言語自体によって事前定義されたデータ型です。オブジェクトはクラスのインスタンスであり、C はオブジェクト指向言語であるため、プリミティブ データ型とオブジェクト間の変換が必要です。クラスは、データ型のアーキテクチャ計画として機能します。これはデータを具体的に説明するものではありませんが、クラス名の意味、つまり、そのクラスのオブジェクトがどのようなもので、そのオブジェクトに対してどのような操作を実行できるかを指定します。
C 言語コンパイラでは、プリミティブ データ型からオブジェクトへの変換が明確に定義されていないため、プリミティブ データ型をオブジェクトに変換するには、プログラマがメカニズムを定義する必要があります。プリミティブ型を特定のオブジェクトに変換する方法は、ユーザー定義クラスのコンストラクターで定義されます。この問題をよりよく理解するために例を見てみましょう。
私たちが解決している問題は、グラム単位の重量をキログラムとグラムに変換することです。これを行うには、2 つの整数メンバー kg と gm を使用してユーザー定義のクラス重みを定義します。 「kg」は指定された重さのキログラム値、「gm」は換算される 1 キログラム未満の残りの重さです。この問題を解決するアルゴリズムを以下に示します。
###文法###入力重みを整数変数に代入します。
入力値を 1000 で割って、余りをグラム (gm) 単位で求めます。
この例では、プリミティブ型からユーザー定義のクラス オブジェクトへの変換は、コンストラクターへの暗黙的な呼び出しを使用して行われます。コンストラクターがオブジェクトをインスタンス化するために複数のプリミティブ値を必要とするまでは、これで問題ありません。したがって、コンストラクターを明示的に呼び出して、元の値をパラメーターとしてオブジェクト コンストラクターに渡す必要があります。オブジェクトからプリミティブ型への変換の場合はその逆で、完了するにはより複雑なプロセスが必要になります。
以上がプリミティブ型をオブジェクトに変換する C++ プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。