📄 程序10.10:英制相加_加号运算符重载.cpp
字号:
/* 程序10.10:英制相加_加号运算符重载.cpp:*/
#include<iostream> //包含头文件
#include<string> //包含头文件
using namespace std; //使用名字空间std
class Length //声明一个类Length
{
private:
int iFeet; //声明私有成员变量
int iInch;
public:
Length(); //声明无参数构造符函数
Length(int,int); //声明有参数构造符函数
Length operator+(Length); //声明加号运算符函数
void display(string); //声明显示英制长度函数
};
int main() //main()函数开始
{
Length L1(3,10); //声明类对象L1,调用有参数构造符
Length L2(4,6); //声明类对象L2,调用有参数构造符
cout<<"\n调用operator+()加号运算符函数前"<<endl;
L1.display("L1"); //调用显示英制长度函数
L2.display("L2"); //调用显示英制长度函数
Length L3; //声明类对象L3,调用无参数构造符
L3=L1+L2; //等价于 L1.operator+(L2);
cout<<"\n调用operator+()加号运算符函数后"<<endl;
L3.display("L3"); //调用显示英制长度函数
return 0;
} //main()函数结束
Length::Length() //定义构造符函数
{
iFeet=0;
iInch=0;
}
Length::Length(int iFt,int iIn) //定义构造符函数
{
iFeet=iFt;
iInch=iIn;
}
Length Length::operator+(Length L)//定义加号运算符函数
{
cout<<"\n加号运算符函数operator+()被重载"<<endl;
Length Temp;
Temp.iFeet=iFeet+L.iFeet;
Temp.iInch=iInch+L.iInch;
while(Temp.iInch>=12)
{
Temp.iInch-=12;
Temp.iFeet++;
}
return Temp;
}
void Length::display(string s) //定义显示英制长度函数
{
cout<<s<<" = "<<iFeet<<"\' "<<iInch<<"\" "<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -