?? p9_2.cpp
字號:
/*******************************************
* p9_2.cpp *
* 重載+、-、++為類的成員函數,進行復數運算*
*******************************************/
#include<iostream>
using namespace std;
class Complex //復數類定義
{
private:
double real; //復數實部
double image; //復數虛部
public:
Complex(double real=0.0,double image=0.0) //構造函數
{
this->real=real,this->image=image;
}
void display()
{
cout<<"("<<real<<","<<image<<")"<<endl;
}
Complex operator + (Complex B); //運算符+重載成員函數
Complex operator - (Complex B); //運算符-重載成員函數
Complex operator - (); //運算符-(取負)重載成員函數
Complex operator ++ (); //前置++重載成員函數
Complex operator ++ (int); //后置++重載成員函數
};
Complex Complex::operator +(Complex B) //重載運算符+的函數實現
{
return Complex(real+B.real, image+B.image); //創建一個臨時對象作為返回值
}
Complex Complex::operator -(Complex B) //重載運算符-的函數實現
{
return Complex(real-B.real, image-B.image);
}
Complex Complex::operator -() //重載運算符-(取負)的函數實現
{
return Complex(-real,-image);
}
Complex Complex::operator ++() //重載運算符前置++的函數實現
{
return Complex(++real,image);
}
Complex Complex::operator ++(int) //重載運算符后置++的函數實現
{
return Complex(real++,image);
}
void main()
{
Complex A(100.0,200.0),B(-10.0,20.0),C;
cout<<"A=", A.display();
cout<<"B=", B.display();
C=A+B; //使用重載運算符完成復數加法
cout<<"C=A+B=", C.display();
C=A-B; //使用重載運算符完成復數減法
cout<<"C=A-B=", C.display();
C=-A+B;
cout<<"C=-A+B=", C.display();
C=A++;
cout<<"C=A++, C=", C.display();
C=++A;
cout<<"C=++A, C=", C.display();
C=A+5;
C.display();
cin.get();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -