天津外貿(mào)營銷型網(wǎng)站建設(shè)公司seo頁面鏈接優(yōu)化
目錄
1.類與對象
? ? ? ?1.1 基本概念(繼承、封裝、抽象、多態(tài))
? ? ? ? 1.2類的聲明
? ? ? ? 1.3成員函數(shù)(對象所占空間取決于數(shù)據(jù)成員,和成員函數(shù)無關(guān))
? ? ? ? 1.4數(shù)據(jù)成員(不能在類中初始化)
? ? ? ? 1.5構(gòu)造與析構(gòu)函數(shù)(自動執(zhí)行,順序為棧)
? ? ? ? 1.6對象的定義
? ? ? ? 1.7對象數(shù)組(析構(gòu)過程為棧)className instances[size] ={Obj1(),Obj2(...),...}
? ? ? ? 1.8對象指針(this)
? ? ? ? 1.9對象成員的訪問(成員運算符訪問、指向運算符訪問、引用)
? ? ? ? 1.10對象與const
? ? ? ?1.11 對象的動態(tài)創(chuàng)建與釋放 className *instance = new className(params...)? ; delete instance
? ? ? ? 1.12對象的賦值與復(fù)制
2.繼承與派生(派生會自動屏蔽基類同名成員;)
? ? ? ? 2.1基本概念(三種繼承方式)
? ? ? ?2.2 單繼承
? ? ? ? 2.3派生類構(gòu)成
? ? ? ? 2.4訪問屬性
? ? ? ? 2.5構(gòu)造與析構(gòu)(先執(zhí)行基類構(gòu)造,后執(zhí)行基類虛構(gòu))
? ? ? ? 2.6多繼承 class className:limitation baseClass1,limitation baseClass2{...}
? ? ? ? 2.7對象關(guān)系(派生類可以賦值給基類)
3.多態(tài)與虛函數(shù)
? ? ? ? 3.1基本概念(編譯時多態(tài)、運行時多態(tài))
? ? ? ? 3.2向上類型轉(zhuǎn)換
? ? ? ? 3.3功能早綁定(編譯階段)
? ? ? ? 3.4功能晚綁定(運行階段,虛函數(shù):virtual returnType functionName (params...))
? ? ? ? 3.5虛析構(gòu)函數(shù)
? ? ? ? 3.6虛函數(shù)與重載的區(qū)別(p177)
? ? ? ? 3.7純虛函數(shù)與抽象類
4.友元與靜態(tài)
? ? ? ? 4.1基本概念
? ? ? ? 4.2友元函數(shù) friend returnType functionName(params...) 在類中聲明?
? ? ? ? 4.3友元類 friend className
? ? ? ? 4.4靜態(tài)數(shù)據(jù)成員(只能在類中聲明,類外初始化)
? ? ? ? 4.5靜態(tài)成員函數(shù)(沒有this指針,不能訪問非靜態(tài)成員,除非傳入對象)
5.運算符重載
? ? ? ? 5.1基本概念
? ? ? ? 5.2重載規(guī)則
6.泛型編程
? ? ? ?6.1 基本概念
? ? ? ?6.2 函數(shù)模板
? ? ? ? 6.3類模板
7.STL
1.類與對象
? ? ? ?1.1 基本概念(繼承、封裝、抽象、多態(tài))
? ? ? ? ? ? ? ? 類
? ? ? ? ? ? ? ? 對象
? ? ? ? ? ? ? ? 訪問限制符
? ? ? ? 1.2類的聲明
? ? ? ? 1.3成員函數(shù)(對象所占空間取決于數(shù)據(jù)成員,和成員函數(shù)無關(guān))
? ? ? ? 1.4數(shù)據(jù)成員(不能在類中初始化)
? ? ? ? 1.5構(gòu)造與析構(gòu)函數(shù)(自動執(zhí)行,順序為棧)
? ? ? ? ? ? ? ? 構(gòu)造函數(shù)(系統(tǒng)提供默認構(gòu)造函數(shù))
? ? ? ? ? ? ? ? ? ? ? ? 參數(shù)初始化表
? ? ? ? ? ? ? ? ? ? ? ? 重載
? ? ? ? ? ? ? ? 析構(gòu)函數(shù)(只能有一個,不能重載,無參)
? ? ? ? ? ? ? ? ? ? ? ? 全局對象的調(diào)用時間
? ? ? ? ? ? ? ? ? ? ? ? 局部對象的調(diào)用時間
? ? ? ? ? ? ? ? ? ? ? ? 靜態(tài)局部對象調(diào)用時間
? ? ? ? 1.6對象的定義
? ? ? ? 1.7對象數(shù)組(析構(gòu)過程為棧)className instances[size] ={Obj1(),Obj2(...),...}
? ? ? ? 1.8對象指針(this)
? ? ? ? 1.9對象成員的訪問(成員運算符訪問、指向運算符訪問、引用)
? ? ? ? 1.10對象與const
? ? ? ? ? ? ? ? 常對象(無法調(diào)用非const成員函數(shù))?const className instance()? | className const instance()
? ? ? ? ? ? ? ? 常對象成員
? ? ? ? ? ? ? ? ? ? ? ? 常成員函數(shù)(只能訪問數(shù)據(jù)成員,不能修改) returnType functionName(params...) const
? ? ? ? ? ? ? ? ? ? ? ? 常數(shù)據(jù)成員
? ? ? ? ? ? ? ? 指向?qū)ο蟮某V羔?#xff08;不能修改指針)className * const pointerName = &instance
? ? ? ? ? ? ? ? 指向常對象的指針(常對象只能用指向常對象的指針,不能使用普通指針)const className * pointerName
? ? ? ?1.11 對象的動態(tài)創(chuàng)建與釋放 className *instance = new className(params...)? ; delete instance
? ? ? ? 1.12對象的賦值與復(fù)制
? ? ? ? ? ? ? ? 賦值(賦值運算符 = 默認重載,含指針數(shù)據(jù)成員的類必須自己實現(xiàn)運算符重載,否則產(chǎn)生指針懸掛問題?)object1 = object2
? ? ? ? ? ? ? ? 復(fù)制(拷貝構(gòu)造函數(shù):className (const className &obj)) className instance(instance1) |? className instance = instance1
? ? ? ? ? ? ? ? 兩者異同:
2.繼承與派生(派生會自動屏蔽基類同名成員;)
? ? ? ? 2.1基本概念(三種繼承方式)
? ? ? ?2.2 單繼承
? ? ? ? 2.3派生類構(gòu)成
? ? ? ? 2.4訪問屬性
? ? ? ? 2.5構(gòu)造與析構(gòu)(先執(zhí)行基類構(gòu)造,后執(zhí)行基類虛構(gòu))
? ? ? ? ? ? ? ? 構(gòu)造 className(params...):baseClass(paramValue...){}
? ? ? ? 2.6多繼承 class className:limitation baseClass1,limitation baseClass2{...}
? ? ? ? 2.7對象關(guān)系(派生類可以賦值給基類)
3.多態(tài)與虛函數(shù)
? ? ? ? 3.1基本概念(編譯時多態(tài)、運行時多態(tài))
? ? ? ? 3.2向上類型轉(zhuǎn)換
? ? ? ? 3.3功能早綁定(編譯階段)
? ? ? ? 3.4功能晚綁定(運行階段,虛函數(shù):virtual returnType functionName (params...))
? ? ? ? 3.5虛析構(gòu)函數(shù)
? ? ? ? 3.6虛函數(shù)與重載的區(qū)別(p177)
? ? ? ? 3.7純虛函數(shù)與抽象類
? ? ? ? ????????純虛函數(shù) virtual returnType functionName(params...) =0
? ? ? ? ? ? ? ? 抽象類?(具有一個純虛函數(shù)的類為抽象類,只能作為接口,不能生成對象)
4.友元與靜態(tài)
? ? ? ? 4.1基本概念
? ? ? ? 4.2友元函數(shù) friend returnType functionName(params...) 在類中聲明?
? ? ? ? 4.3友元類 friend className
? ? ? ? 4.4靜態(tài)數(shù)據(jù)成員(只能在類中聲明,類外初始化)
? ? ? ? 4.5靜態(tài)成員函數(shù)(沒有this指針,不能訪問非靜態(tài)成員,除非傳入對象)
5.運算符重載
? ? ? ? 5.1基本概念
? ? ? ? 5.2重載規(guī)則
6.泛型編程
? ? ? ?6.1 基本概念
? ? ? ?6.2 函數(shù)模板
? ? ? ? ? ? ? ? 函數(shù)模板定義
? ? ? ? ? ? ? ? 函數(shù)模板實例化(編譯器自動識別)
? ? ? ? ? ? ? ? 模板參數(shù)(注意:c++不對模板參數(shù)做任何類型轉(zhuǎn)換,需要手動轉(zhuǎn)換。不能提供參數(shù)默認值)
? ? ? ? ? ? ? ? 模板函數(shù)重載(指的是模板函數(shù)也可以被普通函數(shù)重載)
? ? ? ? 6.3類模板
? ? ? ? ? ? ? ? 類模板定義
? ? ? ? ? ? ? ? 類模板實例化(className<TypeName> instance)
? ? ? ? ? ? ? ? 類模板參數(shù)(可以提供參數(shù)默認值,只能放在形參表的最右端,否則出錯)
7.STL
? ? ? ? algorithm.h
? ? ? ? deque.h(雙向隊列)
? ? ? ? functiona.h
? ? ? ? iterator.h
? ? ? ? vector.h(向量)
? ? ? ? list.h(雙向鏈表)
? ? ? ? map.h(鍵值映射)
? ? ? ? memory.h
? ? ? ? numeric.h
? ? ? ? queue.h(隊列)
? ? ? ? set.h(不重復(fù)集合和可重復(fù)集合)
? ? ? ? stack.h(堆棧)
? ? ? ? utility.h