《C++编程》书中各章的例子
源代码在线查看: 程序10.10:英制相加_加号运算符重载.cpp
/* 程序10.10:英制相加_加号运算符重载.cpp:*/
#include //包含头文件
#include //包含头文件
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 L1.display("L1"); //调用显示英制长度函数
L2.display("L2"); //调用显示英制长度函数
Length L3; //声明类对象L3,调用无参数构造符
L3=L1+L2; //等价于 L1.operator+(L2);
cout 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 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 }