第八周 專案一 實現複數類中的運算子過載(2)

2021-07-02 01:24:56 字數 950 閱讀 9332

問題及**:

/*

*檔名稱:project.cpp

*作 者:chenqin.

*完成日期:2023年4月25日

*版 本 號:v1.0

**問題描述:請用類的友元函式,而不是成員函式,再次完成上面提及的運算子的過載;

*程式輸入:略

*程式輸出:略

*/#include using namespace std;

class complex

complex(double r,double i)

friend complex operator+(const complex &c1,complex &c2);

friend complex operator-(const complex &c1,complex &c2);

friend complex operator*(const complex &c1,complex &c2);

friend complex operator/(const complex &c1,complex &c2);

void display();

private:

double real;

double imag;

};//下面定義成員函式

void complex::display()

{ cout<

執行結果:

知識點總結:首先需要掌握友元函式的一些基本性質,其次,在運算子函式不作為成員函式而是類外的普通函式時,需要在complex類中宣告它為友元函式,這樣該運算子函式才能訪問complex類物件中的成員,需要注意的是,宣告為友元函式時運算過載函式要有兩個引數,定義時亦如此。

第八周專案1 1 複數類的運算過載

檔名稱 week8 1 1.cpp 完成日期 2015年 4 月 26 日 版本號 v1.0 問題描述 用類的成員函式,定義複數類過載運算子 使之能用於複數的加減乘除 include using namespace std class complex complex double r,double ...

第八周專案1 2 複數類的運算過載

檔名稱 week8 1 2.cpp 完成日期 2015年 4 月 26 日 版本號 v1.0 問題描述 用類的友元函式再次完成運算子的過載 include using namespace std class complex complex double r,double i friend compl...

第八周專案一 實現複數類中的運算子過載(2)

檔名稱 test.cpp 作 者 劉佳琦 完成日期 2015年 4 月 24 日 版 本 號 v1.0 問題描述 請使用類的友元函式,定義複數類過載運算子 使之能用於複數的加減乘除 程式輸入 無 程式輸出 複數各種運算值 include using namespace std class compl...