第5周 專案6 複數模板類 友元函式

2021-06-30 16:37:54 字數 915 閱讀 2653



問題及**:

/*   

*檔名稱:number.cpp

*作 者:單昕昕

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

*版 本 號:v1.0

*問題描述:友元函式提供了一種非成員函式訪問私有資料成員的途徑,模板類使類中的資料成員的型別變得靈活,這兩種技術可以結合起來用。要求在前面方案的基礎上支援用友員函式實現的加法。

*程式輸入:無。

*程式輸出:複數計算結果。

*/ /*

對於兩個複數(a+bi)和(c+di)的運算結果

執行加法運算:(a+c),(b+d)i

*/#include #include using namespace std;

template class complex

complex(numtype a,numtype b)

void display();

complex complex_add(complex &cc); //執行加法運算

template friend complexadd_complex(complex&c1,complex&c2); //調用友員函式支援加法運算,有兩個形參

};template void complex::display()

template complexadd_complex(complex&c1,complex&c2)

int main( )

執行結果:

知識點總結:

友元函式。

學習心得:

注意友元函式宣告和定義的時候需要宣告是乙個新的模板。

第5周 專案6 複數模板類

問題及 檔名稱 number.cpp 作 者 單昕昕 完成日期 2015年4月11日 版 本 號 v1.0 問題描述 閱讀教材例10.1。該例實現了乙個複數類,但是美中不足的是,複數類的實部和虛部都固定只能是double型的。可以通過模板類的技術手段,設計complex,使實部和虛部的型別為定義物件...

第6周專案5 友元類

檔名稱 test.cpp 作 者 劉暢 完成日期 2015年 4 月 12 日 版 本 號 v1.0 問題描述 定義下面兩個類的成員函式 為體驗友元類,實際上本例並不一定是乙個好的設計,將兩個類的合併為乙個datetime,日期 時間都處理更好 輸入描述 null 程式輸出 按要求輸出。如下 inc...

第6周專案5 友元類

檔名稱 main.cpp 完成日期 2015年 4月15日 版本號 v1.0 問題描述 定義下面兩個類的成員函式 為體驗友元類,實際上本例並不一定是乙個好的設計,將兩個類的合併為乙個datetime,日期 時間都處理更好 輸入描述 程式輸出 編寫的程式 include using namespace...