Programa C ++ para restar números complejos mediante la sobrecarga del operador

En este ejemplo, aprenderá a restar números complejos usando la sobrecarga del operador -.

Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación de C ++:

  • Clases y objetos de C ++
  • Constructores C ++
  • Sobrecarga del operador C ++

Dado que - es un operador binario (operador que opera en dos operandos), uno de los operandos debe pasarse como argumento a la función del operador y el resto del proceso es similar a la sobrecarga de operadores unarios.

Ejemplo: sobrecarga del operador binario para restar un número complejo

 #include using namespace std; class Complex ( private: float real; float imag; public: Complex(): real(0), imag(0)( ) void input() ( cout <> real; cin>> imag; ) // Operator overloading Complex operator - (Complex c2) ( Complex temp; temp.real = real - c2.real; temp.imag = imag - c2.imag; return temp; ) void output() ( if(imag < 0) cout << "Output Complex number: "<< real << imag << "i"; else cout << "Output Complex number: " << real << "+" << imag << "i"; ) ); int main() ( Complex c1, c2, result; cout<<"Enter first complex number:"; c1.input(); cout<<"Enter second complex number:"; c2.input(); // In case of operator overloading of binary operators in C++ programming, // the object on right hand side of operator is always assumed as argument by compiler. result = c1 - c2; result.output(); return 0; ) 

En este programa, se crean tres objetos de tipo Complejo y se le pide al usuario que ingrese las partes real e imaginaria de dos números complejos que se almacenan en objetos c1y c2.

Entonces result = c1 -c 2se ejecuta la sentencia . Esta declaración invoca la función del operador Complex operator - (Complex c2).

Cuando result = c1 - c2se ejecuta, c2se pasa como argumento a la función del operador.

En caso de que el operador sobrecargue los operadores binarios en la programación C ++, el objeto en el lado derecho del operador siempre se asume como un argumento del compilador.

Luego, esta función devuelve el número complejo resultante (objeto) a la función principal () que se muestra en la pantalla.

Aunque este tutorial contiene la sobrecarga de los operadores -, los operadores binarios en la programación C ++ como: +, *, <, + = etc. pueden sobrecargarse de manera similar.

Articulos interesantes...