日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++友元和内部类

發布時間:2024/3/24 c/c++ 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++友元和内部类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、友元
1.1 友元分為:友元函數和友元類

友元提供了一種突破封裝的方式,有時提供了便利。但是友元會增加耦合度,破壞了封裝,所以友元不宜多用。

1.2 友元函數:友元函數可以直接訪問類的私有成員,它是定義在類外部的普通函數,不屬于任何類,但需要在類的內部聲明,聲明時需要加friend關鍵字。
說明:
① 友元函數可訪問類的私有成員,但不是類的成員函數
② 友元函數不能用const修飾
③ 友元函數可以在類定義的任何地方聲明,不受類訪問限定符限制
④ 一個函數可以是多個類的友元函數
⑤ 友元函數的調用與普通函數的調用和原理相同

1.3 友元成員函數:friend函數不僅可以是一般函數(非成員函數),而且可以是另一個類中的成員函數。注意:可能會用到類的提前引用聲明。

#include <iostream> using namespace std;class Date; //對Date類的提前引用聲明 class Time { public:Time(int hour, int minute, int second):hour(hour), minute(minute), second(second){}void display(Date& d); //引用Date類的對象 private:int hour;int minute;int second; };class Date //Date類的聲明 { public:Date(int year, int month, int day):year(year), month(month), day(day){}friend void Time::display(Date& d); //聲明Time類中display函數為本類的友元函數 private:int year;int month;int day; };void Time::display(Date& d) //定義display函數,只能在Date類后面定義 {cout << d.year << "-" << d.month << "-" << d.day << " " << hour << ":" << minute << ":" << second << endl; }int main() {Time t(12, 30, 8);Date d(2019, 12, 23);t.display(d);return 0; }

1.3 友元類
①友元類的所有成員函數都可以是另一個類的友元函數,都可以訪問另一個類中的非公有成員。
②友元關系是單向的,不具有交換性。
比如上述Time類和Date類,在Time類中聲明Date類為其友元類,那么可以在Date類中直接訪問Time類的私有成員變量,但想在Time類中訪問Date類中私有的成員變量則不行。
③友元關系不能傳遞
如果B是A的友元,C是B的友元,則不能說明C時A的友元。

1.4友元利弊:友元是對面向對象的封裝性進行破環,但是有助于數據共享,能提高程序的效率。使用時做好權衡!

二、內部類

2.1 概念:如果一個類定義在另一個類的內部,這個內部類就叫做內部類。注意此時這個內部類是一個獨立的類,它不屬于外部類,更不能通過外部類的對象去調用內部類。外部類對內部類沒有任何優越的訪問權限。

注意:內部類就是外部類的友元類。注意友元類的定義,內部類可以通過外部類的對象參數來訪問外部類中的所有成員。但是外部類不是內部類的友元。

2.2 特性:
①內部類可以定義在外部類的public、protected、private都是可以的。
②注意內部類可以直接訪問外部類中的static、枚舉成員,不需要外部類的對象/類名。
③sizeof(外部類)=外部類,和內部類沒有任何關系。

總結

以上是生活随笔為你收集整理的C++友元和内部类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产大学生视频 | 精品国自产拍在线观看 | 欧美性xxxxx极品少妇 | 国产一区二区三区在线播放无 | 亚洲性猛交富婆 | 日韩免费精品 | av网站在线播放 | 国产精品亚洲天堂 | 日批视频免费播放 | 日本免费中文字幕 | 毛片123 | 久久久久国产精品无码免费看 | 91久久久久| 欧洲女性下面有没有毛发 | 98av视频| 男人的天堂伊人 | 狠狠艹狠狠干 | 国产日产精品一区二区三区 | 日本不卡一区视频 | 在线看欧美 | 韩国美女一区二区 | 91在线视频导航 | 日韩影视一区二区三区 | 久久精品tv | 国产日韩欧美视频 | 最好看的日本字幕mv视频大全 | 私人影院毛片 | 久久综合一区二区三区 | 美女网站全黄 | 亚洲高清中文字幕 | 四色成人av永久网址 | 国产视频一二三 | 欧美一级片黄色 | 国产一区二区观看 | 国产麻豆a毛片 | 黄色精品一区二区 | 青青草视频播放 | 欧美日韩中文字幕一区 | 欧美一级性 | 欧美日韩综合在线 | 色噜噜狠狠一区二区三区 | 国产精品久久中文字幕 | 久久亚洲精少妇毛片午夜无码 | 欧美日韩一区二区在线观看视频 | 亚洲理论在线 | 人人射人人插 | 亚洲欧美视频二区 | 成人1区2区3区 | 中国在线观看免费高清视频播放 | 贵族女沦为官妓h呻吟 | 久久午夜夜伦鲁鲁片无码免费 | 中文字幕日韩精品在线 | 古代玷污糟蹋np高辣h文 | 欧美日韩激情在线一区二区三区 | 激情中文网 | 人人射 | 九九九九色| 成人午夜视频网站 | 亚洲一区二区三区四区电影 | 视频一区国产精品 | 日韩av一区在线 | 亚洲欧美国产另类 | 又黄又骚的视频 | 五月导航 | 综合色网站 | 好吊色在线观看 | 超碰88| 黄片毛片在线 | 久久网站视频 | 亚洲欧美日韩精品永久在线 | 国产一区二区精品久久 | 久久精品中文 | 欧美美女爱爱视频 | 好男人资源 | 亚洲国产精品成人综合在线 | 国产精品一区二区亚洲 | 老汉色av| 黄色在线小视频 | 九草视频在线观看 | 亚洲免费网址 | 亚洲欧美天堂网 | 日韩av高清在线播放 | 亚洲伊人精品 | 亚洲天堂av中文字幕 | 国产精品91av | 久久久久久片 | 国产不雅视频 | 可以免费观看的av网站 | av第一福利大全导航 | 超碰在线99 | 黄色网址在线免费播放 | 黄色一级大片在线免费看国产 | 久久久久在线 | 黑人巨大精品欧美黑寡妇 | 天堂国产精品 | 日本一区二区黄色 | 禁断介护av一区二区 | 懂色tv| 日本三级欧美三级 |