中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

微信登錄界面相城seo網(wǎng)站優(yōu)化軟件

微信登錄界面,相城seo網(wǎng)站優(yōu)化軟件,怎么在阿里巴巴做網(wǎng)站,網(wǎng)站信息備案管理系統(tǒng)??????????????????????創(chuàng)做不易,麻煩點個關(guān)注???????????????????????? ??????????????????文末有驚喜!獻(xiàn)舞一支!???????????????????? 目錄 9.12…

??????????????????????創(chuàng)做不易,麻煩點個關(guān)注????????????????????????

??????????????????文末有驚喜!獻(xiàn)舞一支!????????????????????

目錄

9.12 C++之友元函數(shù)

9.12.1 友元函數(shù)的聲明friend

9.12.2 普通全局函數(shù)作為類的友元函數(shù)

9.12.3 類的某個成員函數(shù)作為另外一個類的友元函數(shù)

9.12.4 整個類作為另外一個類的友元

點贊👍? + 收藏👐 + 關(guān)注👌


9.12 C++之友元函數(shù)

問題:什么是友元函數(shù)?

????????在 C++ 中,友元函數(shù)是指在一個類的外部定義的、被該類聲明為友元的非成員函數(shù)。友元函數(shù)可以訪問該類的所有成員包括私有成員),并且可以在不通過類對象進(jìn)行訪問的情況下改變成員的值。

? ? ? ? 類的擁有不同權(quán)限訪問函數(shù)的一個主要特點,即類的私有成員無法在類的外部(作用域之外)訪問。但是,我們上一小節(jié)文章末尾留下了一個疑惑,在有時候需要在類的外部訪問類的私有成員怎么辦?
????????解決方法是使用友元函數(shù),友元函數(shù)是一種特權(quán)函數(shù),C++允許這個特權(quán)函數(shù)訪問私有成員。這一點從現(xiàn)實生活中也可以很好的理解。比如你的錢是你個人私有的,你家里人拿你的錢你是可以允許的,但是一個陌生人來拿你的錢,你就不能直接給他了。這時候你家人出來一個說這是他的律師來,是他的朋友,拿了一個東西證明了這個關(guān)系(friend == 合法合同、或者律師證,或者你的電話,或者你本人,用來證明你們朋友關(guān)系的紐帶),這樣就可以把你個人的錢給他了。我們可以把一個全局函數(shù)、某個類中的成員函數(shù)、甚至整個類聲明為友元。

? ? ?(👮👮👮這里提醒大家,不要輕易給陌生人轉(zhuǎn)賬、發(fā)紅包、匯款等,任何!所有!一切!讓你先轉(zhuǎn)賬才可以得到什么的理由!!!都是詐騙!!!并且不是通過購物平臺或者官方的平臺的,私人的那種,而且交易方式?jīng)]有實名等!都是騙子!警惕詐騙,轉(zhuǎn)賬之前一定要確認(rèn)對方是否是你認(rèn)識的人,或者是你的家人等等。警防網(wǎng)絡(luò)詐騙,讓騙子無處可騙。防詐騙從每個人做起👮👮👮)

? ? ? ? 特別的:友元函數(shù)會破壞類的封裝性😭,因為私有數(shù)據(jù)可以被外部訪問到

9.12.1 友元函數(shù)的聲明friend

????????友元函數(shù)使用friend關(guān)鍵字聲明一個函數(shù)為友元函數(shù)。

? ? ? ? friend關(guān)鍵字只使用于聲明處,一個函數(shù)或者是類對象作為另外一個類的友元,例如A類作為B類的友元,那么A類可以直接訪問B類中的私有數(shù)據(jù)。

? ? ? ? 友元比較著重運(yùn)用在運(yùn)算符重載上。

9.12.2 普通全局函數(shù)作為類的友元函數(shù)

這里我們使用了一個案例舉例:是在千鋒教育C++嵌入式基礎(chǔ)班講解(后續(xù)案例用qf縮寫代替)的一個案例:例如你的家,有客廳,有你的臥室,那么你的客廳是Public的,所有來的客人都可以進(jìn)去,但是你的臥室是私有的,也就是說只有你能進(jìn)去,但是呢,你也可以允許你的好閨蜜、好基友進(jìn)去參觀你的臥室(基于正常情況,防止杠精)。

1.當(dāng)不是友元的時候,訪問私有成員會報錯的

當(dāng)使用相同名字的時候,聲明為友元函數(shù)的時候,公共函數(shù)visitingfun()就沒有報錯。?

完整案例+結(jié)果

代碼:

#include <iostream>
#include <string>
using namespace std;class Room
{friend void visitingfun(Room &room);
private:string bedRoom;//臥室public:
public:string setingRoom;//客廳pubTic:
public:Room(string bedRoom, string setingRoom){this->bedRoom = bedRoom;this->setingRoom = setingRoom;}
};
//普通全局函數(shù)
void visitingfun(Room &room){cout<<"訪問了"<<room.setingRoom<<endl;cout<<"訪問了"<<room.bedRoom<<endl;
}
void test01(){Room room("私人豪華大床房臥室","公共188大平層客廳");visitingfun(room);
}
int main()
{test01();return 0;
}

9.12.3 類的某個成員函數(shù)作為另外一個類的友元函數(shù)

這個案例中,goodfriens類中的vistinng_02成員函數(shù)作為Room1類的友元函數(shù)。此時就是不同類的成員,進(jìn)行一個私有成員變量的訪問。

拓展:

?上面的案例中,成員函數(shù)聲明和定義順序比較關(guān)鍵,總所周知,程序是向下編譯的,順序執(zhí)行。

那看下面這個圖片中:成員函數(shù)放到類對象里,此時報錯原因,即使你提前聲明了Room1,但是由于初始化階段,還沒有生成Room1的成員,此時編譯器是不知道Room1里面有什么成員的。所以此時報錯了。

另外,goodfriends的聲明也應(yīng)該在Room1聲明之前(這里僅僅針對9.12.3主題來說,因為你要的是成員函數(shù))?,編譯器提前聲明只是知道了一個名字,編譯順序始終是從上往下執(zhí)行的。

所以,你要把類中要成為友元函數(shù)的成員函數(shù),定義實現(xiàn)放在外面,放在所有類的聲明的后面就行了。

9.12.4 整個類作為另外一個類的友元

????????就是這個類的所有成員函數(shù)都可以訪問另一個類的私有數(shù)據(jù)。

并且,聲明的順序可成員函數(shù)的基本一致。

?代碼:

class Room1;//向前聲明方式,這樣只能說明類的名稱
class goodfrieds
{
public:void visiting_01(Room1 &room);void visiting_02(Room1 &room);};
class Room1{//friend void goodfrieds::visiting_02(Room1 &room);friend class goodfrieds;
private:string bedRoom;//臥室public:
public:string setingRoom;//客廳pubTic:
public:Room1(string bedRoom, string setingRoom){this->bedRoom = bedRoom;this->setingRoom = setingRoom;}
};
void goodfrieds::visiting_01(Room1 &room){cout<<"訪問了01"<<room.setingRoom<<endl;cout<<"訪問了01"<<room.bedRoom<<endl;
}
void goodfrieds::visiting_02(Room1 &room){cout<<"訪問了02"<<room.bedRoom<<endl;cout<<"訪問了02"<<room.setingRoom<<endl;
}
void test03(){Room1 room("私人豪華大床房臥室","公共188大平層客廳");goodfrieds ob;ob.visiting_01(room);ob.visiting_02(room);
}
int main()
{test03();return 0;
}

點贊👍? + 收藏👐 + 關(guān)注👌

??您的支持??是我最大的動力??相互學(xué)習(xí)??共同進(jìn)步??一起搞錢??動動發(fā)財?shù)男∈??

? ????????????????????十星好評,Erike的專用模板????????????????????

謝? ? ?謝? ? ?老? ? ?板!老? ? ?板? ? ?大? ? ?氣!

http://m.risenshineclean.com/news/32263.html

相關(guān)文章:

  • 青海省高速公路建設(shè)管理局網(wǎng)站百度知道網(wǎng)頁版入口
  • 外包項目刷seo快速排名
  • 品牌網(wǎng)站建設(shè)有哪兩種模式百度問問
  • 網(wǎng)頁設(shè)計作業(yè)報告范文成都網(wǎng)站優(yōu)化
  • 設(shè)計培訓(xùn)網(wǎng)頁版草根seo視頻大全網(wǎng)站
  • 黃石企業(yè)網(wǎng)站建設(shè)開發(fā)阿里云com域名注冊
  • 龍華哪有做網(wǎng)站設(shè)計網(wǎng)站關(guān)鍵詞優(yōu)化排名推薦
  • 蘭州關(guān)鍵詞優(yōu)化效果西安seo服務(wù)培訓(xùn)
  • wordpress技術(shù)類主題關(guān)鍵詞長尾詞優(yōu)化
  • 用什么做網(wǎng)站最簡單百度招商加盟
  • 建站工具官網(wǎng)小程序開發(fā)流程
  • 網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司品牌營銷推廣策劃公司
  • 華為云怎么做網(wǎng)站域名??烤W(wǎng)頁app推廣大全
  • 汽車app網(wǎng)站建設(shè)優(yōu)化關(guān)鍵詞規(guī)則
  • 《網(wǎng)站建設(shè)與維護(hù)》講義基本seo
  • 給別人做網(wǎng)站去掉版權(quán)谷歌瀏覽器2021最新版
  • seo網(wǎng)站托管人員優(yōu)化是什么意思
  • 公司網(wǎng)站建設(shè)應(yīng)注意什么seo技術(shù)網(wǎng)網(wǎng)
  • 網(wǎng)站建設(shè)完整seo外包公司哪家好
  • 山東 基層政府網(wǎng)站集約化建設(shè)免費(fèi)自媒體網(wǎng)站
  • 做亞馬遜網(wǎng)站需要租辦公室嗎百度關(guān)鍵詞規(guī)劃師
  • 倒閉漢化組的wordpress網(wǎng)絡(luò)優(yōu)化工具app手機(jī)版
  • 找合伙人做紅木家具網(wǎng)站廈門seo百度快照優(yōu)化
  • 網(wǎng)頁設(shè)計軟件app百度seo入駐
  • 做網(wǎng)站v1認(rèn)證需要付費(fèi)嗎seo外包服務(wù)公司
  • 電影網(wǎng)站app怎么做的怎么創(chuàng)建自己的免費(fèi)網(wǎng)址
  • 優(yōu)化網(wǎng)站的網(wǎng)站seo快速優(yōu)化排名
  • 深圳效果好的免費(fèi)網(wǎng)站建設(shè)seo知識總結(jié)
  • 邢臺路橋建設(shè)總公司沒有網(wǎng)站嗎做優(yōu)化的網(wǎng)站
  • 常德網(wǎng)站制作sem推廣是什么意思呢