讀書筆記之:C++Primer 第4版(ch12-14)

來源:互聯網
上載者:User

第12章 類
1. 建構函式
 類的建構函式一般使用一個初始化列表來初始化對象的資料成員。
2. 成員函數
 在類內部聲明成員函數是必須的,而定義成員函數則是可選的。在類內部定義的函數預設為inline。而在類外部定義的成員函數必須指明它們是在類的範圍內。
成員函數有一個附加的隱含實參,將函數綁定到調用函數的對象。這個隱含的實參其實是this指標。對像的this指標並不是對象本身的組成部分,它不佔對象的記憶體空間,在每次非static成員函數調用對象的時候,this指標作為隱藏的第一個參數由編譯器傳遞給對象。
將關鍵字const 加在形參表之後,就可以將成員函式宣告為常量:
如:
  double avg_price() const;
const成員不能改變其所操作的對象的資料成員。const必須同時出現在聲明和定義中,若只出現在一處,就會出現一個編譯時間錯誤。
3. 資料抽象與封裝


4. 類的聲明與定義
類的定義放在標頭檔件中是一個很好的做法。
可以聲明一個類而不定義它:
如:class Screen;
這個聲明也稱為前向聲明,在聲明之後定義之前,這個類是一個不完全類型,即已知類型卻不知道包含哪些成員。
5. 類對象
定義類是定義了一種新的類型,定義了類型之後就可以定義該類型的對象。定義對象的時候要為對象分配儲存空間,但定義類型的時候是不進行儲存分配的。
6. 類成員的顯示初始化
  對於沒有定義建構函式並且其全體資料成員均是public的類可以採用與初始數組元素相同的方式初始化其成員。
  這個地方所說的其實就是struct。在C++中struct和class一樣都是定義一個類。在C++中允許這種形式的初始化其實就是為了對C程式實現相容。
  因為在C中可以對struct進行顯示的初始化。


建構函式


友元
 


Static成員變數和成員函數


第13章 複製控制

每種類型,無論是內建類型還是類類型,都對該類型對象的一組操作的含義進行了定義。每種類型還定義了建立該類型的對象時會發生什麼——建構函式定義了該類 型對象的初> 始化。類型還能控制複製、賦值或撤銷該類型的對象時會發生什麼——類通過特殊的成員函數:複製建構函式、賦值操作符和解構函式類控制這些行為。


  1. 複製建構函式












  1. 賦值操作


  1. 解構函式


第14章 重載操作符與轉換


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.