?? 運算符的重載.cpp
字號:
#include<iostream.h>
#include<math.h>
class Complex{
double Real,Image;
public:
Complex(double r=0.0,double i=0.0):Real(r),Image(i){}//注意:必須對和進行初始化。
Complex(Complex &com){
Real=com.Real;
Image=com.Image;
}
void Print(){
cout<<"Real="<<Real<<'\t'<<"Image="<<Image<<'\n';
}
Complex operator+(Complex);
Complex operator+(double);
void operator=(Complex);
void operator+=(Complex);
double abs(void);
Complex operator/(Complex);
Complex operator*(Complex);
};
Complex Complex:: operator+(Complex c){
Complex Temp(Real+c.Real,Image+c.Image);
return Temp;
}
Complex Complex:: operator+(double d){
return Complex(Real+d,Image);
}
void Complex:: operator=(Complex c){
Real=c.Real;
Image=c.Image;
}
void Complex:: operator+=(Complex c){
Real=Real+c.Real;
Image+=c.Image;
}
double Complex:: abs(void){
return sqrt(Real*Real+Image*Image);
}
Complex Complex:: operator/(Complex c){
double d=c.Real*c.Real+c.Image*c.Image;
return Complex((Real*c.Real+Image*c.Image)/d,(Image*c.Real-Real*c.Image)/d);
}
Complex Complex:: operator*(Complex c){
return Complex(c.Real*c.Real-c.Image*c.Image,Image*c.Real+Real*c.Image);
}
void main(){
Complex c1(1.0,1.0),c2(2.0,2.0),c3(4.0,4.0),c;
double d=0.5;
c1.Print();
c=c2+c3;
c.Print();
c+=c1;
c.Print();
c=c+d;
c.Print();
c=c3*c2;
c.Print();
c=c3/c1;
c.Print();
cout<<"c3的模是:"<<c3.abs()<<endl;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -