封裝 繼承 多型
所謂封裝就是使用三個訪問限定符來限制成員變數和成員方法的讀取許可權:
1. public 修飾,任意位置可見
2. private 修飾,本類中可見
3. protected 修飾,在本類中和子類類中可見
在這裡說明,成員方法在類內實現,系統會預設其為inline函式,建議以inline函式的方式來執行
在類外實現,系統會預設其和普通函式一樣,在執行的時候將其作為普通函式處理
假設乙個類為 goods, 則this指標的的定義就是: goods* const this, 因此this指標在使用時必須有乙個指向
依賴於物件的調動
首先說明類的實現是不佔空間的.
在將乙個類例項化為乙個物件時,系統是給每個物件的成員變數都開闢記憶體空間的,但是對於成員函式所有的物件是用同乙份的,那麼成員方法是怎麼精確的找到成員變數並列印出我們預期的結果的呢? 原因是成員方法在傳參時,它會預設多接收乙個引數,這個引數就是乙個this指標,來指向這個物件
1. 系統開給成員變數開闢記憶體
2. 系統呼叫建構函式對開闢的記憶體進行初始化
對比以下三行**:
ggoods good1; //這是乙個ggoods類的例項化過程,呼叫了預設建構函式
ggoods good2("麵包",5,100); //這是乙個ggoods類的例項化過程,呼叫了自己寫的建構函式
ggoods good3(); //這是乙個函式宣告,有返回值型別ggoods,函式名good3,和引數列表
1. 建構函式
2. 析構函式
3. 拷貝建構函式
4. 賦值運算子的過載函式
5. 取位址運算子的過載函式
6. const修飾的取位址運算子的過載函式
c 物件導向程式設計 類和物件(基礎)
目錄 類的資料成員和成員函式 在類體之外定義成員函式 內聯函式 物件的建立 類成員的訪問 建構函式和析構函式 複製建構函式 物件指標 this指標 靜態類成員 靜態資料成員的宣告,初始化與訪問 靜態成員函式 動態記憶體分配 class 類名 public 公有資料成員,公有成員函式 protecte...
C 類和物件 類和物件
c 中物件的型別稱為類,類代表了某一批物件的共性和特徵,類是物件的抽象,而物件是類的具體例項,類是抽象的,不占用記憶體,而物件是具體的,占用 儲存空間,這點很重要,讀者需要牢記。類是使用者自己指定的型別,如果程式中要用到類型別,必須自己根據需要進行宣告,或者使用別人已設計好的類,c 標準本身並不提供...
類和物件 基礎
class myclass myobject class nslog my class is myclass classname if myobject iskindofclass uicontrol class if myobject ismemberofclass nsstring class ...