国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

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

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

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

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

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

目錄

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

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

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

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

9.12.4 整個(gè)類作為另外一個(gè)類的友元

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


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

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

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

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

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

? ? ? ? 特別的:友元函數(shù)會(huì)破壞類的封裝性😭,因?yàn)樗接袛?shù)據(jù)可以被外部訪問(wèn)到

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

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

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

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

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

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

1.當(dāng)不是友元的時(shí)候,訪問(wèn)私有成員會(huì)報(bào)錯(cuò)的

當(dāng)使用相同名字的時(shí)候,聲明為友元函數(shù)的時(shí)候,公共函數(shù)visitingfun()就沒(méi)有報(bào)錯(cuò)。?

完整案例+結(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<<"訪問(wèn)了"<<room.setingRoom<<endl;cout<<"訪問(wèn)了"<<room.bedRoom<<endl;
}
void test01(){Room room("私人豪華大床房臥室","公共188大平層客廳");visitingfun(room);
}
int main()
{test01();return 0;
}

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

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

拓展:

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

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

另外,goodfriends的聲明也應(yīng)該在Room1聲明之前(這里僅僅針對(duì)9.12.3主題來(lái)說(shuō),因?yàn)槟阋氖浅蓡T函數(shù))?,編譯器提前聲明只是知道了一個(gè)名字,編譯順序始終是從上往下執(zhí)行的。

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

9.12.4 整個(gè)類作為另外一個(gè)類的友元

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

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

?代碼:

class Room1;//向前聲明方式,這樣只能說(shuō)明類的名稱
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<<"訪問(wèn)了01"<<room.setingRoom<<endl;cout<<"訪問(wèn)了01"<<room.bedRoom<<endl;
}
void goodfrieds::visiting_02(Room1 &room){cout<<"訪問(wèn)了02"<<room.bedRoom<<endl;cout<<"訪問(wèn)了02"<<room.setingRoom<<endl;
}
void test03(){Room1 room("私人豪華大床房臥室","公共188大平層客廳");goodfrieds ob;ob.visiting_01(room);ob.visiting_02(room);
}
int main()
{test03();return 0;
}

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

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

? ????????????????????十星好評(píng),Erike的專用模板????????????????????

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

http://m.aloenet.com.cn/news/32263.html

相關(guān)文章:

  • 青海省高速公路建設(shè)管理局網(wǎng)站百度知道網(wǎng)頁(yè)版入口
  • 外包項(xiàng)目刷seo快速排名
  • 品牌網(wǎng)站建設(shè)有哪兩種模式百度問(wèn)問(wèn)
  • 網(wǎng)頁(yè)設(shè)計(jì)作業(yè)報(bào)告范文成都網(wǎng)站優(yōu)化
  • 設(shè)計(jì)培訓(xùn)網(wǎng)頁(yè)版草根seo視頻大全網(wǎng)站
  • 黃石企業(yè)網(wǎng)站建設(shè)開(kāi)發(fā)阿里云com域名注冊(cè)
  • 龍華哪有做網(wǎng)站設(shè)計(jì)網(wǎng)站關(guān)鍵詞優(yōu)化排名推薦
  • 蘭州關(guān)鍵詞優(yōu)化效果西安seo服務(wù)培訓(xùn)
  • wordpress技術(shù)類主題關(guān)鍵詞長(zhǎng)尾詞優(yōu)化
  • 用什么做網(wǎng)站最簡(jiǎn)單百度招商加盟
  • 建站工具官網(wǎng)小程序開(kāi)發(fā)流程
  • 網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司品牌營(yíng)銷推廣策劃公司
  • 華為云怎么做網(wǎng)站域名??烤W(wǎng)頁(yè)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)頁(yè)設(shè)計(jì)軟件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知識(shí)總結(jié)
  • 邢臺(tái)路橋建設(shè)總公司沒(méi)有網(wǎng)站嗎做優(yōu)化的網(wǎng)站
  • 常德網(wǎng)站制作sem推廣是什么意思呢