* 作 者: 石堯
* 完成日期:2014 年05 月 13日
* 版 本 號:v1.0
** 問題描述:分析類中成員的訪問屬性。
* 樣例輸入:略.
* 樣例輸出:略。
* 問題分析:略。
*/#include using namespace std;
class a //a為基類
;class b: public a //b為a的公用派生類
;class c: public b //c為b的公用派生類
;int main()
(1)在main函式中,能否用b1.i,b1.j和b1.k引用派生類中的基類a的成員i, j k?
答:只能呼叫b1.i,因為i是public型的,而其他兩個是protected和private型的。
(2)派生類b中的成員能否呼叫基類a中的成員函式f1和f2?
答:如果在類內兩者都可以呼叫,不再類內的話只能呼叫f1.
(3)派生類b中的成員函式能否引用基類a中的資料成員i, j k?
答:只能呼叫i,j但k不能。
(4)能否在main函式中用c1.i, c1.j, c1.k, c1.m, c1.n, c1.p基類a的成員i, j k、派生類b的成員m, n、以及派生類c的成員p?
答:只能呼叫c1.i。
(5)能否在main函式中用c1.f1(), c1.f2(), c1.f3()和c1.f4()呼叫f1, f2, f3, f4成員函式?
答:只有c1.f2()不能呼叫。
(6)派生類c的成員函式f4能否呼叫基類a中的成員函式f1, f2和派生類中的成員函式f3?
答:可以,因為是在類內。
訪問屬性與類資料成員
為什麼要使用屬性 乙個良好的類不僅僅要將類的實現部分隱藏起來,還會限制外部對類中成員變數 field 的訪問許可權。在c 中,你可以通過屬性和屬性訪問器 accessor 來達到這個目的,因此屬性也經常被稱為smart field。1 class employee2 類屬性4 public stri...
派生類成員的訪問屬性
討論訪問屬性時,需要考慮以下幾種情況 1 基類的成員函式訪問基類成員 2 派生類的成員函式訪問派生類自己增加的成員 3 基類的成員函式訪問派生類的成員 4 派生類的成員函式訪問派生類的成員 5 在派生類外訪問派生類的成員 6 在派生類外訪問基類的成員 對於 1 和 2 的情況,即基類的成員函式訪問基...
C 派生類成員的訪問屬性
c 繼承方式總共分為以下幾種 public private protected三種 它們直接影響到派生類的成員 及其物件對基類成員訪問的規則 1 public 公有繼承 繼承時保持基類中各成員屬性不變,並且基類中private成員被隱藏。派生類的成員只能訪問基類中的public protected成...