400-888-5228

課程介紹:

本課程涵蓋C++面向?qū)ο笳Z法、語義、對象模型、優(yōu)良編程風(fēng)格、面向?qū)ο蟾拍睿寣W(xué)員從一無所知到具備C++專家能力,并徹底認(rèn)識(shí)C++底層運(yùn)作。

 

課程長度:

2天

 

 

課程對象:

有經(jīng)驗(yàn)的企業(yè)開發(fā)技術(shù)人員

 

課程大綱:

本次課程由以下幾個(gè)部分構(gòu)成:

1、從C到C++

引用和指針:為什么引用很重要const關(guān)鍵字:為什么const很重要名字空間 (namespace)

2、深入C++對象

關(guān)于C++對象

內(nèi)置類型的對象,如int、double對象

自定義類型的對象

對象類型的定義

關(guān)鍵字class和struct

類成員:成員函數(shù)和數(shù)據(jù)成員

靜態(tài)數(shù)據(jù)成員

成員的訪問控制

對象的size

關(guān)于this指針

const成員函數(shù)、const究竟修飾什么

mutable數(shù)據(jù)成員

4種特殊成員函數(shù):constructor、destructor、copy constructor、operator=

對象的構(gòu)造、初始化列表

對象的析構(gòu)

對象的復(fù)制

什么情況下有必要顯式定義4種特殊函數(shù)

C++對象生命周期

3、操作符重載

關(guān)于C++中操作符重載機(jī)制

重要操作符重載

算術(shù)運(yùn)算:+, -, *, /, %, ++, --, ...

關(guān)系運(yùn)算:>, <, ==, !=

下標(biāo)存?。篬 ]

函數(shù)調(diào)用:(),函數(shù)對象

類型轉(zhuǎn)換、單參數(shù)構(gòu)造函數(shù)與隱式轉(zhuǎn)換、阻止隱式轉(zhuǎn)換 -- explicit關(guān)鍵字

友元與成員

4、面向?qū)ο蠡A(chǔ) -- 繼承

基類與派生類

再談對象的構(gòu)造與析構(gòu)

虛函數(shù)、純虛函數(shù)

派生類的內(nèi)存布局、虛函數(shù)表

多態(tài)、多態(tài)類型、如何體現(xiàn)多態(tài)

虛析構(gòu)、為什么虛析構(gòu)很重要

5、關(guān)于繼承更多的話題

多繼承

虛繼承與虛基類

對基類的訪問、public / protected / private繼承

Down cast:static_cast<>和dynamic_cast<>

運(yùn)行期類型識(shí)別 (RTTI)

6、C++與面向?qū)ο笤O(shè)計(jì)

C++語言機(jī)制提供了完整的OOP支持

超越繼承

OOP若干法則和設(shè)計(jì)模式

封裝變化,分離不變與變化

面向接口編程,而不是針對實(shí)現(xiàn)編程

多用組合、少用繼承

努力保持交互對象間的松耦合

類設(shè)計(jì)的開閉原則:類應(yīng)該對擴(kuò)展開放、對修改關(guān)閉

依賴抽象,而不是依賴具體類

最少知識(shí)原則

好萊塢法則 (控制反轉(zhuǎn)):不要打電話給我,我會(huì)找你的

單一責(zé)任原則:一個(gè)類應(yīng)該只有一個(gè)引起變化的原因。