Operatör Aşırı Yüklemesini Kullanarak Karmaşık Sayıyı Çıkarmak için C ++ Programı

Bu örnekte, - operatörünün operatör aşırı yüklemesini kullanarak karmaşık sayıları çıkarmayı öğreneceksiniz.

Bu örneği anlamak için, aşağıdaki C ++ programlama konuları hakkında bilgi sahibi olmalısınız:

  • C ++ Sınıfları ve Nesneleri
  • C ++ Oluşturucular
  • C ++ Operatör Aşırı Yüklemesi

- bir ikili operatör olduğu için (iki işlenen üzerinde çalışan operatör), işlenenlerden biri operatör işlevine bağımsız değişken olarak aktarılmalıdır ve dinlenme işlemi tekli operatörlerin aşırı yüklenmesine benzer.

Örnek: Karmaşık Sayıyı Çıkarmak İçin İkili Operatör Aşırı Yüklemesi

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

Bu programda, Kompleks türünde üç nesne oluşturulur ve kullanıcıdan nesnelerde depolanan iki karmaşık sayı için gerçek ve sanal bölümleri girmesi istenir c1ve c2.

Ardından ifade result = c1 -c 2çalıştırılır. Bu ifade, operatör işlevini çağırır Complex operator - (Complex c2).

Zaman result = c1 - c2çalıştırılır, c2operatör işlevine bağımsız değişken olarak geçirilir.

C ++ programlamasında ikili operatörlerin operatör aşırı yüklenmesi durumunda, operatörün sağ tarafındaki nesne her zaman derleyici tarafından argüman olarak kabul edilir.

Daha sonra bu işlev, sonuçta oluşan karmaşık sayıyı (nesne) ekranda görüntülenen main () işlevine döndürür.

Bununla birlikte, bu öğretici - operatörlerin aşırı yüklenmesini içerir, C ++ programlamasındaki ikili operatörler: +, *, <, + = vb. Benzer şekilde aşırı yüklenebilir.

Ilginç makaleler...