C 實驗3 友元函式

2021-07-11 01:35:53 字數 994 閱讀 5831

一、問題及**

/* 

* 檔名稱:友元函式

* 作 者:潘雨佳

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

* 版 本 號:vc6.0

* 對任務及求解方法的描述部分:實現求距離函式的三種版本,分別利用成員函式、友元函式和一般函式求兩點間距離的函式,並設計main()函式完成測試

* 輸入描述:輸入兩點的座標

* 問題描述:求兩點的距離

* 程式輸出:輸出兩點的距離

* 問題分析:區分成員函式、友元函式和一般函式的實現和呼叫

* 演算法設計:略

*/

#include #include using namespace std;

class cpoint

void distance1(cpoint p1,cpoint p2);

friend void distance2(cpoint &p1, cpoint &p2);

double getx()

double gety()

};

void cpoint::distance1(cpoint p1,cpoint p2)

{ double d=sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));

cout<

二、執行結果

三、心得體會

剛開始看到題目不知道成員函式裡的變數是x、y還是點,也不知道應該怎麼呼叫x、y的值,參考了書本以後才知道,以為很簡單的題目也花了很長的時間。

四、知識點總結

友元函式可以直接呼叫類中的資料成員,一般函式不可以,需要通過成員函式才能使用;點的座標可以通過p1.x來進行運算。

C 友元函式 友元類 友元成員函式

眾所周知,c 控制對類物件私有部分的訪問。通常,公有類方法提供唯一的訪問途徑,但是有時候這種限制太嚴格,以至於不適合特定的程式設計問題。在這種情況下,c 提供了另外一種形式的訪問許可權 友元,友元有3種 友元函式 友元類 友元成員函式。通過讓函式成為類的友元 即 友元函式 可以賦予該函式與類的成員函...

友元 友元函式 友元類和友元成員函式 C

有些情況下,允許特定的非成員函式訪問乙個類的私有成員,同時仍阻止一般的訪問,這是很方便做到的。例如被過載的操作符,如輸入或輸出操作符,經常需要訪問類的私有資料成員。友元 frend 機制允許乙個類將對其非公有成員的訪問權授予指定的函式或者類,友元的宣告以friend開始,它只能出現在類定義的內部,友...

友元 友元函式 友元類和友元成員函式 C

有些情況下,允許特定的非成員函式訪問乙個類的私有成員,同時仍阻止一般的訪問,這是很方便做到的。例如被過載的操作符,如輸入或輸出操作符,經常需要訪問類的私有資料成員。友元 frend 機制允許乙個類將對其非公有成員的訪問權授予指定的函式或者類,友元的宣告以friend開始,它只能出現在類定義的內部,友...