第七周 專案5拓展 模板類中使用友元函式

2021-06-21 12:55:12 字數 1401 閱讀 9246

/*

*檔名稱:

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

*版本號:v0.1

*對任務及求解方法的描述部分:

*輸入描述:無

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

*程式輸入:

*程式輸出:

*問題分析:

*演算法設計:

*我的程式:

*/#include using namespace std;

template//類宣告前加模板的宣告

class complex

complex(t1 r,t1 i)

//友元函式

templatefriend complexcomplex_add(const complex&c1, const complex&c2);

templatefriend complexcomplex_minus(const complex&c1, const complex&c2);

templatefriend complexcomplex_multiply(const complex&c1, const complex&c2);

templatefriend complexcomplex_divide(const complex&c1, const complex&c2);

//成員函式

complex complex_add(complex &c2);

void display();

private:

t1 real; //資料成員的型別,也將被物件定義時提供的實際型別代替

t1 imag;

};templatecomplexcomplex::complex_add(complex&c2)

templatecomplexcomplex_add(const complex&c1, const complex&c2)

templatecomplexcomplex_minus(const complex&c1, const complex&c2)

templatecomplexcomplex_multiply(const complex&c1, const complex&c2)

templatecomplexcomplex_divide(const complex&c1, const complex&c2)

templatevoid complex::display( )

結果展示:

心得體會:還是不習慣這種宣告和定義友元函式。

第七周專案5拓展模板類中使用友元函式

檔名稱 模板類中使用友元函式 完成日期 2014年4月15日 版本號 v1.0 輸入描述 無 問題描述 模板類中使用友元函式 include using namespace std template class complex complex complex add const complex te...

第七周 專案5 複數類模板

程式的版權和版本宣告部分 檔名稱 複數模板類 作 者 馮冬影 完成日期 2014 年 4月 11日 版 本 號 v1.0 對任務及求解方法的描述部分 輸入描述 問題描述 程式輸出 includeusing namespace std template 宣告類模板t class complex com...

第七周專案 友元類

all right reserved.檔名稱 test.cpp 完成日期 2016年5月18日 版本號 v1.0 問題描述 為體驗友元類,實際上本例並不一定是乙個好的設計,將兩個類的合併為乙個datetime,日期 時間都處理更好 輸入描述 程式輸出 知識點總結 在做此類題目時,最重要的是主意if語...