真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何淺析C++類訪問控制問題

本篇文章給大家分享的是有關(guān)如何淺析C++類訪問控制問題,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

10年積累的成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、成都外貿(mào)網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站策劃后付款的網(wǎng)站建設(shè)流程,更有解放免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

在介紹C++類之前,首先要了解下什么是C++類?其實(shí)C++類是將數(shù)據(jù)成員和進(jìn)行于其上的一系列操作封裝在一起,注意:成員函數(shù)可以操作數(shù)據(jù)成員,友元函數(shù)包括兩種:設(shè)為友元的全局函數(shù),設(shè)為友元C++類中的成員函數(shù)。

而成員函數(shù)對(duì)于整個(gè)C++類而言卻是共享的,即一個(gè)C++類只保留一份成員函數(shù)。那么每個(gè)對(duì)象怎樣和這些可以認(rèn)為是“分離”的成員函數(shù)發(fā)生聯(lián)系,即成員函數(shù)如何操作對(duì)象的數(shù)據(jù)成員?

記住this指針,無論對(duì)象通過(.)操作或者 (->)操作調(diào)用成員函數(shù),編譯時(shí)刻,編譯器都會(huì)將這種調(diào)用轉(zhuǎn)換成我們常見的全局函數(shù)的形式,并且多出一個(gè)參數(shù)(一般這個(gè)參數(shù)放在***個(gè)),然后將 this指針傳入這個(gè)參數(shù)。于是就完成了對(duì)象與成員函數(shù)的綁定(或聯(lián)系)。

實(shí)例化后就得到同一個(gè)C++類的多個(gè)不同的對(duì)象,既然成員函數(shù)共享的,那么成員函數(shù)就可以操作對(duì)象的數(shù)據(jù)成員。
問題是現(xiàn)在有多個(gè)對(duì)象,成員函數(shù)需要知道操作的是哪個(gè)對(duì)象的數(shù)據(jù)成員?

比如有對(duì)象obj1和obj2,都屬于AC++類,AC++類有public成員函數(shù)foo()如果obj1調(diào)用該函數(shù),編譯時(shí)會(huì)給foo函數(shù)傳入this指針,obj1,foo中操作obj1自身的成員就不用任何修飾,直接訪問,因?yàn)槠渲械臄?shù)據(jù)成員自動(dòng)根據(jù)this指針找到。

如果obj1調(diào)用該函數(shù),同樣可以訪問同C++類的其他對(duì)象的數(shù)據(jù)成員!那么你需要做的是讓foo函數(shù)知道是同C++類對(duì)象中哪個(gè)對(duì)象的數(shù)據(jù)成員,一個(gè)解決辦法是傳入同C++類其他對(duì)象的指針或引用,那么就可以操作同C++類其他對(duì)象的數(shù)據(jù)成員。

public:protected:private:
public繼承publicprotected---
protected繼承protectedprotected---
private繼承privateprivate---

通俗的講,同C++類的對(duì)象間可以“互相訪問”對(duì)方的數(shù)據(jù)成員,只不過訪問途徑不是直接訪問.步驟是:通過一個(gè)對(duì)象調(diào)用其public成員函數(shù),此成員函數(shù)可以訪問到自己的或者同C++類其他對(duì)象的public/private/protected數(shù)據(jù)成員和成員函數(shù)(C++類的所有對(duì)象共用)。

而且還需要指明是哪個(gè)對(duì)象的數(shù)據(jù)成員(調(diào)用函數(shù)的對(duì)象自己的成員不用指明,因?yàn)橛衪his指針;其他對(duì)象的數(shù)據(jù)成員可以通過引用或指針間接指明)

C++中public,protected,private訪問小結(jié)***:private,public,protected方法的訪問范圍.(public繼承下)private: 只能由該C++類中的函數(shù)、其友元函數(shù)訪問,不能被任何其他訪問,該C++類的對(duì)象也不能訪問。

protected: 可以被該C++類中的函數(shù)、子C++類的函數(shù)、以及其友元函數(shù)訪問,但不能被該C++類的對(duì)象訪問 public: 可以被該C++類中的函數(shù)、子C++類的函數(shù)、其友元函數(shù)訪問,也可以由該C++類的對(duì)象訪問注:友元函數(shù)包括兩種:設(shè)為友元的全局函數(shù),設(shè)為友元C++類中的成員函數(shù)。

第二:C++類的繼承后方法屬性變化: 使用private繼承,父C++類的所有方法在子C++類中變?yōu)閜rivate; 使用protected繼承,父C++類的protected和public方法在子C++類中變?yōu)閜rotected,private方法不變; 使用public繼承,父C++類中的方法屬性不發(fā)生改變;

以上就是如何淺析C++類訪問控制問題,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)頁名稱:如何淺析C++類訪問控制問題
網(wǎng)站地址:http://weahome.cn/article/gspcdi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部