《C 程式設計原理與實踐》讀書筆記

2021-06-22 13:33:37 字數 1432 閱讀 9215

p292 ,302

what

抽象類 what 抽象類的另一種解釋 《effective c++》電子版p175:另乙個製作handle class的辦法是,令類成為一種特殊的抽象基類(abstract base class),稱為inte***ce class。這種class的目的是詳細一一描述子類的介面,所以它通常不帶成員變數,也沒有建構函式,只有乙個virtual析構函式,以及一組純虛函式,用來敘述整個介面。

why 抽象類

1)為了抽象,便於繼承

2)為了定義一組相關類(類層次)的介面(p302)

how抽象類:在c++中如何實現使類成為抽象類:

1)最常用:宣告至少乙個

純虛函式(virtual function。在子類中被覆蓋虛函式

2)通過將建構函式宣告為protected。「protected:」用於建構函式的目的是:保證我們不能直接建立該類。//《

c++程式設計原理與實踐》

p303

class

b //

抽象類;

b b;

//編譯錯誤:因為

b是抽象類

p303

how設計純虛函式:帶有純虛函式的類不需要建構函式(如果它沒有任何資料成員):帶有純虛函式的類的目標是提供純粹的介面,即它們傾向於不包含任何資料成員(資料成員在派生類中定義),因此沒用任何建構函式(如果沒有任何資料成員需要初始化,那麼就不需要建構函式)

why純虛函式:

1)使其類成為抽象類

2)提供純粹的介面

how:類的資料成員都要宣告為private,不能宣告為protected,類提供public介面來讓子類和客戶訪問修改這些資料成員。子類也只能通過成員函式訪問修改這些資料成員。how設計純虛函式

why

繼承,而不是組合:

減少**量:父類public,子類設計,成員函式:相比於組合,不用再乙個乙個寫public介面了。這只是父類設計,要考慮的問題。

父類protected開放許可權給子類設計,卻對客戶封閉:1)相比於組合(public),不用再乙個乙個寫為private了 2)組合,a類如果函式為public,儘管組合a類的b類將其函式封裝為private,但客戶也能使用a類的public函式了,

繼承可以多型

可以多重繼承

p298

how:基本上,類層次結合引數引用傳遞方式,與預設拷貝是不能混合的。當你設計乙個將要作為基類的類時,應禁用它的拷貝建構函式和拷貝賦值操作

《Kafka入門與實踐》讀書筆記

1 具有高吞吐量來支援如實時的日誌集這樣的大規模事件流。2 能夠很好地處理積壓的資料,以便能夠周期性地載入離線資料進行處理。3 能給低延遲地處理傳統訊息應用場景。4 能夠支援分割槽 分布式,實時地處理訊息,同時具有容錯保障機制。當前比較流行的訊息中介軟體有kafka rocketmq rabbit ...

讀書筆記 AgilePPP XP實踐

客戶 管理者 開發緊密工作在一起。客戶 指定義產品特性並排列特性優先順序的人或團體。同一公司的業務分析師 質量保證專家 市場專家 使用者團體的代表 支付開發費用的人。都是能和團隊一起工作的成員。客戶或能代替客戶的人最好和開發在同乙個房間工作。了解需求只要做到能估算的程度就夠了。必須知道存在很多細節及...

讀書筆記 AgilePPP XP實踐

客戶 管理者 開發緊密工作在一起。客戶 指定義產品特性並排列特性優先順序的人或團體。同一公司的業務分析師 質量保證專家 市場專家 使用者團體的代表 支付開發費用的人。都是能和團隊一起工作的成員。客戶或能代替客戶的人最好和開發在同乙個房間工作。了解需求只要做到能估算的程度就夠了。必須知道存在很多細節及...