C ++ - program för att subtrahera komplexa nummer med hjälp av operatörsöverbelastning

I det här exemplet lär du dig att subtrahera komplexa nummer med hjälp av operatörens överbelastning av - operatören.

För att förstå detta exempel bör du ha kunskap om följande C ++ programmeringsämnen:

  • C ++ klasser och objekt
  • C ++ konstruktörer
  • C ++ överbelastning av operatören

Eftersom - är en binär operatör (operatör som arbetar på två operander), bör en av operanderna skickas som argument till operatörsfunktionen och viloprocessen liknar överbelastning av unary operatörer.

Exempel: Överbelastning av binär operatör till subtraherande komplexnummer

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

I detta program skapas tre objekt av typen Complex och användaren uppmanas att ange de verkliga och imaginära delarna för två komplexa nummer som lagras i objekt c1och c2.

Sedan result = c1 -c 2utförs uttalandet . Detta uttalande åberopar operatörsfunktionen Complex operator - (Complex c2).

När result = c1 - c2körs c2skickas det som argument till operatörsfunktionen.

Vid operatörsöverbelastning av binära operatörer i C ++ programmering antas objektet på operatörens högra sida alltid som argument av kompilatorn.

Därefter returnerar den här funktionen det resulterande komplexa numret (objekt) till huvudfunktionen () som visas på skärmen.

Denna tutorial innehåller dock överbelastning av - operatorer, binära operatörer i C ++ - programmering som: +, *, <, + = etc. kan överbelastas på ett liknande sätt.

Intressanta artiklar...