-6

コンストラクターは、次のオブジェクトを定義して出力する必要があります。

CComplex c1;
CComplex c2(1,3);
CComplex c3(4);
CComplex c4(c3);

+、-、*、および / 操作のオーバーロードされた演算子を実装し、2 つの複素数間の操作と浮動小数点数と複素数間の操作をサポートします。

ただし、パラメーターを 1 つだけ指定して宣言すると、オブジェクトはエラーになります。コミュニティで FOO.h の例を調べて実装しようとしましたが、うまくいきませんでした。

4

1 に答える 1

3

目標が本当に複素数計算機を持つことであり、学校の課題やその他の恣意的な制限のある演習を完了することではない場合はstd::complex、ホイールを使用し、再発明しないでください。

価値のあることとして、 のコンストラクターstd::complexは 2 つの引数を取り、両方とも既定値を持ちます。テンプレートについては言及せず、std::complex< double >1 つのコンストラクターを効果的に明示的に定義します。

complex( double real = 0, double imaginary = 0 );

これを実装すると、質問に記載されている機能が得られます。

于 2012-11-26T02:04:13.777 に答える