Programa C ++ para subtrair número complexo usando sobrecarga de operador

Neste exemplo, você aprenderá a subtrair números complexos usando a sobrecarga de operador do operador -.

Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação C ++:

  • Classes e objetos C ++
  • Construtores C ++
  • Sobrecarga de operador C ++

Como - é um operador binário (operador que opera em dois operandos), um dos operandos deve ser passado como argumento para a função do operador e o processo restante é semelhante à sobrecarga de operadores unários.

Exemplo: sobrecarga do operador binário para subtrair o número complexo

 #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; ) 

Neste programa, três objetos do tipo Complex são criados e o usuário é solicitado a inserir as partes real e imaginária de dois números complexos que são armazenados nos objetos c1e c2.

Então a instrução result = c1 -c 2é executada. Esta instrução invoca a função do operador Complex operator - (Complex c2).

Quando result = c1 - c2é executado, c2é passado como argumento para a função do operador.

Em caso de sobrecarga de operador de operadores binários na programação C ++, o objeto à direita do operador é sempre assumido como argumento pelo compilador.

Então, esta função retorna o número complexo resultante (objeto) para a função main () que é exibida na tela.

Porém, este tutorial contém a sobrecarga de operadores -, operadores binários em programação C ++ como: +, *, <, + = etc. podem ser sobrecarregados de maneira semelhante.

Artigos interessantes...