CPLXOPS(3C++) — Subroutines
NAME
complex_operators: operators for the C++ complex math library
SYNOPSIS
#include <complex.h>
class complex {
public:
friend complexoperator+(complex, complex);
friend complexoperator−(complex);
friend complexoperator−(complex, complex);
friend complexoperator∗(complex, complex);
friend complexoperator/(complex, complex);
friend intoperator==(complex, complex);
friend intoperator!=(complex, complex);
voidoperator+=(complex);
voidoperator−=(complex);
voidoperator∗=(complex);
voidoperator/=(complex);
};
DESCRIPTION
The basic arithmetic operators, comparison operators, and assignment operators are overloaded for complex numbers. The operators have their conventional precedences. In the following descriptions for complex operators,
— x, y, and z are of type complex.
Arithmetic operators:
z = x + y Returns a complex which is the arithmetic sum of complex numbers x and y.
z = −x Returns a complex which is the arithmetic negation of complex number x.
z = x − y Returns a complex which is the arithmetic difference of complex numbers x and y.
z = x ∗ y Returns a complex which is the arithmetic product of complex numbers x and y.
z = x / y Returns a complex which is the arithmetic quotient of complex numbers x and y.
Comparison operators:
x == y Returns non-zero if complex number x is equal to complex number y; returns 0 otherwise.
x != y Returns non-zero if complex number x is not equal to complex number y; returns 0 otherwise.
Assignment operators:
x += y Complex number x is assigned the value of the arithmetic sum of itself and complex number y.
x −= y Complex number x is assigned the value of the arithmetic difference of itself and complex number y.
x ∗= y Complex number x is assigned the value of the arithmetic product of itself and complex number y.
x /= y Complex number x is assigned the value of the arithmetic quotient of itself and complex number y.
WARNING
The assignment operators do not produce a value that can be used in an expression. That is, the following construction is syntactically invalid,
complex x, y, z;
x = ( y += z );
whereas,
x = ( y + z );
x = ( y == z );
are valid.
SEE ALSO
CPLX.INTRO(3C++), cartpol(3C++), cplxerr(3C++), cplxexp(3C++), and cplxtrig(3C++).
— C++ Complex Math Library