?? 程序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 + -