Program C ++ pentru scăderea numărului complex utilizând supraîncărcarea operatorului

În acest exemplu, veți învăța să scădeți numere complexe folosind supraîncărcarea operatorului operatorului -.

Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele următoarelor subiecte de programare C ++:

  • Clase și obiecte C ++
  • C ++ Constructori
  • Supraîncărcarea operatorului C ++

Deoarece - este un operator binar (operator care operează pe doi operanzi), unul dintre operanzi ar trebui să fie transmis ca argument funcției operator și procesul de repaus este similar cu supraîncărcarea operatorilor unari.

Exemplu: supraîncărcarea operatorului binar pentru scăderea numărului complex

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

În acest program, sunt create trei obiecte de tip Complex și utilizatorului i se cere să introducă părțile reale și imaginare pentru două numere complexe care sunt stocate în obiecte c1și c2.

Apoi, declarația result = c1 -c 2este executată. Această declarație invocă funcția operator Complex operator - (Complex c2).

Când result = c1 - c2este executat, c2este transmis ca argument funcției operator.

În cazul supraîncărcării operatorilor de operatori binari în programarea C ++, obiectul din partea dreaptă a operatorului este întotdeauna asumat ca argument de către compilator.

Apoi, această funcție returnează numărul complex rezultat (obiect) la funcția main () care este afișată pe ecran.

Cu toate acestea, acest tutorial conține supraîncărcarea operatorilor -, operatorii binari din programarea C ++ precum: +, *, <, + = etc. pot fi supraîncărcați în mod similar.

Articole interesante...