#include using namespace std;
class complex
complex(double r,double i)
complex operator-();
//實現輸入、輸出的運算子過載
friend ostream& operator << (ostream& output, const complex& c);
friend istream& operator >> (istream& input, complex& c);
//實現加減乘除的運算子過載
friend complex operator+(complex &c1, complex &c2);
friend complex operator+(double d1, complex &c2);
friend complex operator+(complex &c1, double d2);
friend complex operator-(complex &c1, complex &c2);
friend complex operator-(double d1, complex &c2);
friend complex operator-(complex &c1, double d2);
friend complex operator*(complex &c1, complex &c2);
friend complex operator*(double d1, complex &c2);
friend complex operator*(complex &c1, double d2);
friend complex operator/(complex &c1, complex &c2);
friend complex operator/(double d1, complex &c2);
friend complex operator/(complex &c1, double d2);
private:
double real;
double imag;
};//實現輸出的運算子過載
ostream& operator << (ostream& output, const complex& c)
while(!((sign=='+'||sign=='-')&&i=='i'));
c.real=a;
c.imag=(sign=='+')?b:-b;
return input;
}complex complex::operator-()
//複數相加:(a+bi)+(c+di)=(a+c)+(b+d)i.
complex operator+(complex &c1, complex &c2)
complex operator+(double d1, complex &c2)
complex operator+(complex &c1, double d2)
//複數相減:(a+bi)-(c+di)=(a-c)+(b-d)i.
complex operator-(complex &c1, complex &c2)
complex operator-(double d1, complex &c2)
complex operator-(complex &c1, double d2)
//複數相乘:(a+bi)(c+di)=(ac-bd)+(bc+ad)i.
complex operator*(complex &c1, complex &c2)
complex operator*(double d1, complex &c2)
complex operator*(complex &c1, double d2)
//複數相除:(a+bi)/(c+di)=(ac+bd)/(c^2+d^2) +(bc-ad)/(c^2+d^2)i
complex operator/(complex &c1, complex &c2)
complex operator/(double d1, complex &c2)
complex operator/(complex &c1, double d2)
int main()
第9周專案1 複數類中的運算子過載(續)
檔名稱 test.cpp 作 者 王元陽 完成日期 2015 年 5 月 13 日 版 本 號 v1.0 問題描述 在複數類中的運算子過載基礎上 1 再定義一目運算子 c相當於0 c。2 定義complex類中的 和 運算子的過載,實現輸入和輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。...
2015 第9周專案1 複數類中的運算子過載(續)
專案1 複數類中的運算子過載 續 在複數類中的運算子過載 基礎上 1 再定義一目運算子 c相當於0 c。2 定義complex類中的 和 運算子的過載,實現輸入和輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。include using namespace std class comple...
第5周專案6 複數類模板
檔名稱 project.cpp 完成日期 2015年4月16日 版本號 v1.0 問題描述 3 友元函式提供了一種非成員函式訪問私有資料成員的途徑,模板類使類中的資料成員的型別變得靈活,這兩種技術可以結合起來用。要求在前面方案的基礎上支援用友員函式實現的加法。用於測試的main 函式如下 輸入描述 ...