C 兩個不同類之間,友元函式的簡單應用。

2021-07-10 23:15:48 字數 547 閱讀 3458

上週上課學完友元函式,做了一道題,記下來。

計算car和boat的重量和:

#includeusing namespace std;

class boat;//boat類的宣告,如果不宣告,car類裡的友元函式宣告會找不到boat

class car

friend int gettoalweight(car &c,boat &b); //友元函式宣告

private:

int weight;//car的weight;

};class boat

friend int gettoalweight(car &c,boat &b); //友元函式宣告

private:

int weight;//boat的weight

};//友元函式實現,boat和car的weight和

int gettoalweight(car &c,boat &b)

int main(){

boat b(300);

car c(40);

cout<<"總重量為:"<

PTA 編寫乙個友元函式,求兩個日期之間相差的天數

設計乙個日期類date,包括日期的年份 月份和日號,編寫乙個友元函式,求兩個日期之間相差的天數。該類中設計有3個友元函式 count day 函式,它有兩個引數,第2個引數是乙個標誌,當其值等於1 時,計算一年的開始到某日期的天數 否則計算某日期到年尾的天數。leap 函式用於判斷指定的年份是否為閏...

C 模板實現兩個不同型別的資料相加函式

1 最簡單的情況 templatet add const t a,const t b 缺點是不能夠處理不同型別的資料,例如add 100,100.0f 2 第二種情況 templatet1 add1 t1 lhs,t2 rhs 這種情況下,能夠處理不同型別的資料,但是有些情況下有些資料精度會丟失,例...

C 合併兩個不同型別集合資料

2019 09 30 10 28 46 dear200892 閱讀數 9 文章標籤 c lambda 合併不同型別集合資料 更多 分類專欄 c 別名 使用lambda表示式來實現left join 先把兩個不同的類資料擺上。public class user 區域編號 public int area...