private和public稱為成員訪問限定符(member access specifier)。除了private和public之外,還有一種成員訪問限定符protected(受保護的),用protected宣告的成員稱為受保護的成員,它不能被類外訪問(這點與私有成員類似),但可以被派生類的成員函式訪問。
在c++中宣告乙個類的型別和宣告乙個結構體型別是相似的。下面是宣告乙個結構體型別的方法:
7structstudent//宣告了乙個名為student的結構體型別
;studentstud1,stud2;//定義了兩個結構體變數stud1和stud2,它只包括資料,沒有包括操作
宣告乙個類:15classstudent//以class開頭;//以上4行是函式中的操作語句};studentstud1,stud2;//定義了兩個物件stud1和stud2
可以看到宣告類的方法是由宣告結構體型別的方法發展而來的,類就是物件的型別。實際上,類是一種廣義的資料型別。類這種資料型別中的資料既包含資料,也包含運算元據的函式。
不能把類中的全部成員與外界隔離,一般是把資料隱蔽起來,而把成員函式作為對外界的介面。可以將上面類的宣告改為16classstudent//以class開頭;
在宣告類型別時,宣告為private的成員和宣告為public的成員的次序任意,既可以先出現private部分,也可以先出現public部分。
在乙個類體中,關鍵字private和public可以分別出現多次。每個部分的有效範圍到出現另乙個訪問限定符或類體結束時(最後乙個右花括號)為止。但是為了使程式清晰,應該養成這樣的習慣: 使每一種成員訪問限定符在類定義體中只出現一次。
c++ 程式多數先寫public部分,把private部分放在類體的後部。這樣可以使使用者將注意力集中在能被外界呼叫的成員上,使閱讀者的思路更清晰一些。
在c++程式中,經常可以看到類。為了使用者方便,常用的c++編譯系統往往向使用者提供類庫(但不屬於c++語言的組成部分),內裝常用的基本的類,供使用者使用。不少使用者也把自己或本單位經常用到的類放在乙個專門的類庫中,需要用時直接呼叫,這樣就減少了程式設計的工作量。
public和private的區別
1.封裝的概念 1 public該類或非該類均可以訪問 同乙個類 左大括號和右大括號之間。同乙個包的類 在乙個包 package 中,class和public class為同乙個包的類,屬於同乙個檔案。不同包內的子類 分別建立兩個不同的包 package 在每個包中,分別建立class的類,稱為不同...
用private和public封裝函式
def private 1 name return hello,s name def private 2 name return hi,s name def greeting name if len name 3 return private 1 name else return private 2...
private繼承與public繼承
private 能夠訪問 1.該類中的函式 2.友元函式。不能訪問 1.public繼承的子類和private繼承子類 2.該類的物件。protected 能夠訪問 1.該類中的函式 2.public繼承的子類和private繼承子類 3.友元函式。不能訪問 1.該類的物件。public 能夠訪問 ...