類的私有資料成員的訪問

2021-06-20 15:13:18 字數 567 閱讀 7423

類的私有資料成員智慧型在類體哪被訪問,不能夠在類體外通過物件名直接訪問,考察下面的類 :

class point1  ;

point1::point1()

point1::~point1()

void point1::setpoint(int x,int y,int z)

void point1::display()

執行結果:

12398 2

下面進行一下總結:可以訪問類中的私有資料成員的是:

1、類體的成員函式

2、類體的成員函式中的形參中的該類的物件、物件引用或者物件指標,以及函式體中定義的區域性物件、物件引用或者物件指標。

3、類的友元函式中的形參中的該類的物件、物件引用或者物件指標,以及函式體中定義的區域性物件、物件引用或者物件指標。

4、類的友元類的成員函式中形參中的該類的物件、物件引用或者物件指標,以及函式體中定義的區域性物件、物件引用或者物件指標。

對類裡成員函式返回私有資料成員的操作

對類裡面的私有指標,自己犯這樣的錯誤 1 對返回指標直接賦值 god.return pointer change n 當然這樣編譯器會報錯。2 妄想通過別的指標賦值 char p god.return pointer p change n 這樣私有成員指標當然沒有被改變到。確做法應該是增加乙個 vo...

新增對私有資料成員的支援

問題 你已將發現了可復用的功能,並且建立乙個物件,將該功能定義為物件的方法。然而還需要新增對私有資料成員的支援 解決方案 確保乙個資料成員不會暴露給公共訪問的一種方法是,將該物件從新定義為乙個函式,它帶有公開暴露的方法,或者帶有使用私有資料或方法的資料物件。例如我們對下列物件改寫,新增對私有資料成員...

C 私有資料成員不能用物件去訪問嗎

首先,必須清楚的是private和public限定的是類而不是物件。因此,在成員函式中訪問同類物件的私有成員是完全可以的。所以,某些教材上所說的 私有資料成員不能用物件去訪問 是欠妥當的。比如,如下類的宣告誰說不可以呢?class complex void complex add complex c...