C++ 二元运算符重载

17 Mar 2025 | 6 分钟阅读

本节将讨论 C++ 编程语言中的二元运算符重载。一个包含两个操作数以执行数学运算的运算符称为二元运算符重载。它是一种多态编译技术,单个运算符可以通过从程序员或用户获取两个操作数来执行各种功能。有多个二元运算符,如 +、-、*、/ 等,它们可以直接操作或重载类的对象。

Binary Operator Overloading in C++

例如,假设我们有两个数字,5 和 6;并重载二元 (+) 运算符。因此,二元 (+) 运算符将数字 5 和 6 相加并返回 11。此外,我们还可以执行减法、乘法和除法运算,以使用二元运算符进行各种计算。

二元运算符重载的语法

以下是 C++ 编程语言中二元运算符重载的语法。

此处,

return_type: 它定义函数的返回类型。

operator: 它是函数重载的关键字。

binary_operator_symbol: 它表示重载函数以执行计算的二元运算符符号。

arg: 它定义传递给函数的参数。

重载二元运算符以获取两个复数之和的步骤

步骤 1: 启动程序。

步骤 2: 声明类。

步骤 3: 声明变量及其成员函数。

步骤 4: 使用用户定义的 inp() 函数获取两个数字。

步骤 6: 类似地,定义二元 (-) 运算符来减去两个数字。

步骤 7: 调用 print() 函数以显示输入的数字。

步骤 8: 声明类对象 x1、y1、sum 和 sub。

步骤 9: 现在使用 x1 和 y1 对象调用 print() 函数。

步骤 10: 之后,通过使用“+”和“-”运算符对对象进行加减法运算,获取对象 sum 和 sub 的结果。

步骤 11: 最后,使用 x1、y1、sum 和 sub 调用 print() 和 print2() 函数。

步骤 12: 显示复数的加法和减法。

步骤 13: 停止或终止程序。

示例 1: 使用二元 (+) 和 (-) 运算符执行两个复数的加法和减法的程序

让我们创建一个程序,通过在 C++ 编程语言中重载“+”和“-”二元运算符来计算两个复数的加法和减法。

输出

Input two complex numbers:
5
7
Input two complex numbers:
3
5
Entered values are:
	5 + 7i
	3 + 5i
The addition of two complex (real and imaginary) numbers: 8 + 12i
The subtraction of two complex (real and imaginary) numbers: 2 - 2i   

在上面的程序中,我们从用户那里获取两个数字,然后使用二元运算符重载“+”和“-”运算符,以在类中对两个复数进行加法和减法。

示例 2: 使用二元运算符重载添加两个数字的程序

让我们创建一个程序,通过在 C++ 编程语言中重载二元加 (+) 运算符来计算类中两个数字的和。

输出

Enter the first number: 5
Enter the second number: 6
The sum of two numbers is: 11   

在上面的程序中,我们从用户那里获取两个数字 5 和 6,然后重载二元加 (+) 运算符以执行加法,返回两个数字的和为 11。

示例 3: 通过重载多个二元运算符执行算术运算的程序

让我们创建一个程序,在类中重载多个二元运算符以执行算术运算。

输出

Addition : 40
Subtraction : 0
Multiplication : 400
Division : 1    

在上面的程序中,我们将变量 num 的值声明为 20,然后重载二元加 (+)、减 (-)、乘 (*) 和除 (/) 运算符,以在 Arith_num 类中执行各种算术运算。