# マニュアルページ cplxops.3

## 名前

         cplxops - C++ 複素数数学ライブラリの算術演算子関数

## 形式

         #include <complex.h>
         class complex {
         public:
              friend complex operator- (const complex);
              friend complex operator+ (const complex, const complex);
              friend complex operator+ (double, const complex);
              friend complex operator+ (const complex, double);
              friend complex operator- (const complex, const complex);
              friend complex operator- (double, const complex);
              friend complex operator- (const complex, double);
              friend complex operator* (const complex, const complex);
              friend complex operator* (const complex, double);
              friend complex operator* (double, const complex);
              friend complex operator/ (const complex, const complex);
              friend complex operator/ (const complex, double);
              friend complex operator/ (double, const complex);
              friend int     operator== (const complex, const complex);
              friend int     operator!= (const complex, const complex);
              void operator+= (const complex);
              void operator+= (double);
              void operator-= (const complex);
              void operator-= (double);
              void operator*= (const complex);
              void operator*= (double);
              void operator/= (const complex);
              void operator/= (double);
              ... // 以下省略
         };

## 機能説明

         これらの関数は通常の算術演算子と同じ働きを持つもので、複素数
         に対して使用するために多重定義されています。

      単項マイナス演算子
         complex z = - x
              複素数 x の符号を反転した値を返します。

      2 進算術演算子
         complex z = x + y
              x と y の和を返します。ここで、 x および y の一方または
              両 方は複素数です。ライブラリには、この関数の引数 (浮動
              小数点数と複素数) の各組み合わせに対し最適化された バー
              ジョンが用意されています。

         complex z = x - y

              x と y の差を返します。ここで、 x および y の一方または
              両 方は複素数です。ライブラリには、この関数の、引数 (浮
              動小数点数と複素数) の各組み合わせに対し最適化 さ れ た
              バージョンが用意されています。

         complex z = x * y
              x と y の積を返します。ここで、 x および y の一方または
              両 方は複素数です。ライブラリには、この関数の、引数 (浮
              動小数点数と複素数) の各組み合わせに対し最適化 さ れ た
              バージョンが用意されています。

         complex z = x / y
              x と y の商を返します。ここで、 x および y の一方または
              両 方は複素数です。ライブラリには、この関数の、引数 (浮
              動小数点数と複素数) の各組み合わせに対し最適化 さ れ た
              バージョンが用意されています。

      比較演算子
         複素数は順序づけられていません。したがって、値が等しいかどう
         かテストだけ行います。

         x == y
              x と y (ともに複素数) が等しい場合は 1、それ以外の場 合
              は 0 を返します。

         x != y
              x と y (ともに複素数) が等しい場合は 0、それ以外の場 合
              は 1 を返します。

      代入演算子
         コンパイラによって生成されるデフォルトの代入演算子  complex&
         operator=(const complex&) はこの型の演算に適しているため、こ
         のクラスでは再定義されません。複合代入演算子は値を返し ま せ
         ん。したがって、式の一部として使用できないので注意してくださ
         い。たとえば、次の式は、 x が整数型または浮動小数点型であ れ
         ば有効ですが、 x が複素数のときはコンパイルされません。
              z = ( x += y );

         x += y
              複素数 x を y の値だけインクリメントします。ライブラ リ
              に は、この関数の右辺に浮動小数点数と複素数を指定する場
              合のそれぞれに適したバージョンが用意されています。

         x -= y
              複素数 x を y の値だけデクリメントします。ライブラリ に
              は、 この関数の右辺に浮動小数点数と複素数を指定する場合
              のそれぞれに適したバージョンが用意されています。

         x *= y
              複素数 x に、それ自身に y の値を乗じた値を代入しま す。
              ラ イブラリには、この関数の右辺に浮動小数点数と複素数を
              指定する場合のそれぞれに適したバージョンが用意されて い
              ます。

         x /= y
              複素数 x に、それ自身を y の値で除した値を代入しま す。
              ラ イブラリには、この関数の右辺に浮動小数点数と複素数を
              指定する場合のそれぞれに適したバージョンが用意されて い
              ます。

## 関連項目

         cplx.intro(3C++), cartpol(3C++), cplxerr(3C++),
         cplxexp(3C++), cplxtrig(3C++)

         『 C++ ライブラリ・リファレンス』の第 2 章「複素数ライブラ
         リ」