Программа на C ++ для вычитания комплексного числа с помощью перегрузки оператора

В этом примере вы научитесь вычитать комплексные числа, используя перегрузку оператора -.

Чтобы понять этот пример, вы должны знать следующие темы программирования на C ++:

  • Классы и объекты C ++
  • Конструкторы C ++
  • Перегрузка оператора C ++

Поскольку - является бинарным оператором (оператором, который работает с двумя операндами), один из операндов должен быть передан в качестве аргумента операторной функции, а остальной процесс аналогичен перегрузке унарных операторов.

Пример: перегрузка двоичного оператора для вычитания комплексного числа

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

В этой программе создаются три объекта типа Complex, и пользователя просят ввести действительную и мнимую части для двух комплексных чисел, которые хранятся в объектах c1и c2.

Затем result = c1 -c 2выполняется инструкция . Этот оператор вызывает операторную функцию Complex operator - (Complex c2).

Когда result = c1 - c2выполняется, c2передается в качестве аргумента операторной функции.

В случае перегрузки бинарных операторов в программировании на C ++ объект в правой части оператора всегда принимается компилятором в качестве аргумента.

Затем эта функция возвращает полученное комплексное число (объект) в функцию main (), которая отображается на экране.

Хотя это руководство содержит перегрузку операторов -, бинарные операторы в программировании на C ++, такие как: +, *, <, + = и т. Д., Могут быть перегружены аналогичным образом.

Интересные статьи...