問題及**:
/*
* 檔名稱:test.cpp
* 作 者:尚 月
* 完成日期:2023年 4 月 14 日
* 版 本 號:v1.0
* * 問題描述:閱讀教材例項,該例實現了乙個複數類,但美中不足的是,複數類的實部和虛部都固定只能是double型的。可以通過模板類的技術手段,設計complex,使實部和虛部的型別為定義物件時指定的實際型別。
(1)要求類成員函式在類外定義
(2)在此基礎上,再實現減法、乘法和除法
* 程式輸出:按要求輸出
*/
#includeusing namespace std;
template//類宣告前加模板宣告
class complex
complex(t r,t i)
complex complex_add(complex &c2);
complex complex_minus(complex &c2);
complex complex_multiply(complex &c2);
complex complex_divide(complex &c2);
void display();
private:
t real;//資料成員的型別,也將被物件定義時提供的實際型別代替
t imag;
};//複數相加:(a+bi)+(c+di)=(a+c)+(b+d)i.
template//每乙個成員函式的定義前,必須要宣告類模板
complexcomplex::complex_add(complex &c2)
//複數相減:(a+bi)-(c+di)=(a-c)-(b-d)i.
template complexcomplex::complex_minus(complex &c2)
//複數相乘:(a+bi)*(c+di)=(ac-bd)+(bc+ad)i.
template complexcomplex::complex_multiply(complex&c2)
//複數相除:(a+bi)/(c+di)=(ac+bd)/(c^2+d^2)+(bc-ad)/(c^2+d^2)i
template complexcomplex::complex_divide(complex &c2)
template void complex ::display()
執行結果:
學習總結:初體驗模板類,有的地方還是有點兒亂,希望經過多練習後會有效果,加油。
第六周 專案六(3) 複數模板類
問題及 檔名稱 friend.cpp 作 者 李楠 完成日期 2015年4月12日 版 本 號 v1.0 可以通過模板類的技術手段,設計complex,使實部和虛部的型別為定義物件時指定的實際型別。輸入描述 3 友元函式提供了一種非成員函式訪問私有資料成員的途徑,模板類使類中的資料成員的型別變得靈活...
第六周專案六 複數模板類(2)
檔名稱 test.cpp 作 者 陳丹 完成日期 2015年4月16日 版本號 v1.0 問題描述 友元函式提供了一種非成員函式訪問私有資料成員的途徑,模板類使類中的資料成員的型別變得靈活,這兩種技術可以結合起來用。支援用友員函式實現的加法。輸入描述 程式輸出 include using names...
第六周專案六複數類模板(2)
問題及 檔名稱 test.cpp 作 者 郝俊宇 完成日期 2015年 4 月15 日 版 本 號 v1.0 問題描述 閱讀教材例10.1。該例實現了乙個複數類,但是美中不足的是,複數類的實部和虛部都固定只能是double型的。可以通過模板類的技術手段,設計complex,使實部和虛部的型別為定義物...