C++面向對象高級編程(上) Week 1 (Boolan) by Im4lish

1-C++編程簡介
Object Based——以良好的方式編寫-Class
Object Oriented——Class之間的關系-繼承、符合、委托
參考書目:
C++ Primer Fifth Edition
The C++ Programming Language
Effective C++
The C++ Standard Library
STL 源碼剖析
2-頭文件與類的聲明

C與C++的區別
Header的布局
防御性聲明:

#ifndef __HEAD_H_            //防止多次包含同樣的頭文件
#define __HEAD_H_
#endif                      //回應前方的 #ifndef

前置聲明
類聲明class xxx {};
類定義xxx::function
模板 template<typename T>

3-構造函數
1、inline:編譯時直接展開,效率較高
!!!inline非強制,編譯器會自己判斷
內聯:
函數在類內定義時,自動轉成內聯的候選人。
inline只是向編譯器發出的一個請求,編譯器可以選擇忽略這個請求。
一般來說,inline用于優化規模小,流程直接,頻繁調用的函數,而且很多編譯器并不支持內聯嵌套函數。內聯函數主要是抵消了函數調用時的開銷,但是如果將內聯函數全部展開的開銷大于函數調用的開銷,編譯器便會自動忽略內聯的請求。
內聯函數通常定義在頭文件中。
2、access level:public、private、protected、friend
封裝:
定義在public說明符后的成員在整個程序內可以被訪問,public成員定義類的接口。
定義在private說明符號后面的成員可以被類的成員函數訪問,但是不能被使用該類的代碼訪問,private部分封裝了類的實現細節。
一個類可以包含0個或者多個訪問說明符,而且對于某個訪問說明符能出現多少次也沒有嚴格限定。每個訪問說明符指定了接下來的成員的訪問級別,其有效范圍直到出現下一個訪問說明符或者到達類的結尾為止。
一個類可以用struct或者class進行定義,區別便是struct的默認訪問權限為public,而class的默認訪問權限為private。
友元:
類可以允許其他類或者函數訪問它的非共有成員,方法是令其他類或者函數稱為它的友元。如果想把一個函數作為它的友元,只需要增加一條以friend關鍵字開始的函數聲明語句即可。
友元函數如果定義在類的內部,則其是隱式內聯的,相同種類的類互為友元。
3、默認實參
4、初始列表xxx xxx() : xx(x),yy(y)
5、overloading
重載的條件:
1、函數有不同參數。
2、函數有不同參數類型。

4-參數傳遞與返回值
const
傳引用傳值的區別:
什么時候用傳引用,什么時候傳值

5-操作符重載與臨時對象
1、操作符重載(成員函數與非成員函數)
比較全面的 C++ 操作符重載 (operator)
2、temp object

6-復習Complex類的實現過程

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容