Complex class implements a set of data types, conversions, and operations for complex numbers. More...
#include <Complex.h>
Public Member Functions | |
| Complex () | |
| Default constructor. | |
| Complex (Real i) | |
| Construct Complex from real part. | |
| Complex (Real r, Real i) | |
| Construct Complex from real and imaginary. | |
| Real | r (Void) |
| Get the real part of Complex number as a Real. | |
| Real | i (Void) |
| Get the imaginary part of the Complex number as a Real. | |
| Void | r (Real r) |
| Set the real part of Complex number. | |
| Void | i (Real i) |
| Set the imaginary part of Complex number. | |
| Complex & | operator= (Const Real &x) |
| Asignment operator for Complex = Real. | |
| Bool | operator== (Const Complex &x) Const |
| Equality operator for Complex == Complex. | |
| Bool | operator!= (Const Complex &x) Const |
| Inquality operator for Complex != Complex. | |
| Bool | operator< (Const Complex &x) Const |
| Less-than operator for Complex < Complex. | |
| Bool | operator<= (Const Complex &x) Const |
| Less-than or equal operator for Complex < Complex. | |
| Bool | operator>= (Const Complex &x) Const |
| Greater-than or equal operator for Complex < Complex. | |
| Bool | operator> (Const Complex &x) Const |
| Greater-than operator for Complex < Complex. | |
| Complex | operator+ (Const Complex &c) |
| Addition operator for Complex + Complex. | |
| Complex | operator- (Const Complex &c) |
| Subtraction operator for Complex - Complex. | |
| Complex | operator- () |
| Negation operator for Complex. | |
| Complex | operator~ () |
| Conjugation operator for Complex. | |
| Complex | operator* (Const Complex &c) |
| Multiplication operator for Complex * Complex. | |
| Complex | operator* (Const Real &r) |
| Multiplication operator for Complex * Real. | |
| Complex | operator/ (Const Complex &c) |
| Division operator for Complex / Complex. | |
| Complex | operator/ (Const Real &r) |
| Division operator for Complex / Real. | |
| Complex & | operator+= (const Complex x) |
| Increment operator for Complex += Complex. | |
| Complex & | operator-= (const Complex x) |
| Decrement operator for Complex -= Complex. | |
| Complex & | operator*= (const Complex x) |
| Multiply scale operator for Complex *= Complex. | |
| Complex & | operator/= (const Complex x) |
| Divide scale operator for Complex /= Complex. | |
| Complex & | operator/= (const Real r) |
| Divide scale operator for Complex /= Real. | |
| Complex | Abs () |
| Complex absolute value. | |
| Complex | Conjugate () |
| Complex conjugate. | |
| Complex | Exp (Complex e) |
| Complex exponentiation. | |
| Void | print (String s=0) |
| Print complex value, prepended by String s if not null. | |
Friends | |
| ostream & | operator<< (ostream &os, const Complex &c) |
| Print to output stream. | |
| istream & | operator>> (istream &is, Complex &c) |
| Read from input stream. | |
Complex class implements a set of data types, conversions, and operations for complex numbers.
Definition at line 27 of file Complex.h.
| Complex::Complex | ( | Real | i ) | [inline] |
| Complex Complex::Abs | ( | ) | [inline] |
| Complex Complex::Conjugate | ( | ) | [inline] |
| Void Complex::i | ( | Real | i ) | [inline] |
| Real Complex::i | ( | Void | ) | [inline] |
Get the imaginary part of the Complex number as a Real.
Definition at line 78 of file Complex.h.
Referenced by ImagPart().
{
| Complex Complex::operator- | ( | ) | [inline] |
Negation operator for Complex.
Both real and imaginary parts are negated.
Definition at line 139 of file Complex.h.
{
| Complex Complex::operator~ | ( | ) | [inline] |
Conjugation operator for Complex.
Only imaginary part is negated.
Definition at line 145 of file Complex.h.
{
| Void Complex::print | ( | String | s = 0 ) |
[inline] |
| Void Complex::r | ( | Real | r ) | [inline] |
| Real Complex::r | ( | Void | ) | [inline] |
Get the real part of Complex number as a Real.
Definition at line 72 of file Complex.h.
Referenced by i(), and RealPart().
{
| ostream& operator<< | ( | ostream & | os, |
| const Complex & | c | ||
| ) | [friend] |
Print to output stream.
Complex number is printed as '(' <real_part> ',' <imag_part> ')'
Definition at line 27 of file Complex.h.
{
friend ostream& operator<<( ostream& os, const Complex& c ) {
cout << "(";
// cout.precision(2); // Use this to set precision, if desired
cout << c.m_r << ", ";
| istream& operator>> | ( | istream & | is, |
| Complex & | c | ||
| ) | [friend] |
Read from input stream.
Complex number is scanned as '{' <real_part> ',' <imag_part> '}' Alternately, parenthesis can be used to bracket complex number.
Definition at line 39 of file Complex.h.
{' <real_part> ',' <imag_part> '}'
friend istream& operator>>( istream& is, Complex& c ) {
char ch;
is >> ch && (ch == '{' || ch == '(')
1.7.2