iT邦幫忙

c++相關文章
共有 449 則文章
鐵人賽 Software Development DAY 4

技術 [Day 04] 為愛用繼承的人設計一對眼睛 - 裝飾器模式 (Decorator Pattern)

裝飾器模式 (Decorator Pattern) 可以動態地為物件附加額外的職責。使用裝飾器來擴展功能比使用繼承更有彈性Head First Design...

鐵人賽 Software Development DAY 7

技術 [Day 07] 經典比較 — Simple Factory / Factory / Abstract Factory

列表比較 Simple Factory Factory Abstract Factory 定義 單一個 Method 來決定要 Return 哪...

鐵人賽 Software Development DAY 11

技術 [Day 11] 讓介面更簡單 – 門面模式 (Facade Pattern)

門面模式 (Facade Pattern) Facade Pattern(外觀模式) 是一種結構型設計模式,為一個子系統裡面的一組 Interface 提...

鐵人賽 Software Development DAY 4
C++ 實務基礎經驗 系列 第 9

技術 第三方套件 mongocxx

第三方套件 mongocxx 今天來介紹mongodb的C++客戶端函式庫,該函式庫也是mongodb官方提供的開源函式庫。 環境 環境因安裝mongodb會需...

鐵人賽 自我挑戰組 DAY 14
Effective C++ 讀書筆記 系列 第 14

技術 [Day 14] Have assignment operators return a reference to *this

前言 今天的守則很簡單,可以直接來看看。 assignment operator請return *this 這個守則是: Have assignment op...

鐵人賽 Software Development DAY 9

技術 [Day 09] 將方法的呼叫封裝起來 - 命令模式 ( Command Pattern )

命令模式 (Command Pattern) 命令模式 (Command Pattern): 可將請求封裝成物件,讓使用者可以將請求、佇列或紀錄...等物件參...

鐵人賽 自我挑戰組 DAY 5
Effective C++ 讀書筆記 系列 第 5

技術 [Day 5] Use const whenever possible (1)

前言 這些準則看標題都很簡單,不過內容就會介紹背後的前因後果,補充各種用法,有時真的越來越難以理解,就吸收多少算多少吧。 能用const就用! 來看第三條準則:...

鐵人賽 自我挑戰組 DAY 29
Effective C++ 讀書筆記 系列 第 29

技術 [Day 29] Don't try to return a reference when you must return an object

前言 今天的守則接續昨天的內容,昨天提到的是盡量pass by reference,今天則是反過來提醒不要走火入魔該return object的時候也retur...

鐵人賽 Software Development DAY 5

技術 [Day 05] 烘焙物件的精華 - 工廠模式 (Factory Pattern)

工廠模式 (Factory Pattern) In Factory pattern, we create object without exposing the...

鐵人賽 自我挑戰組 DAY 17
Effective C++ 讀書筆記 系列 第 17

技術 [Day 17] Copy all parts of an object (1)

前言 終於到了第二章的最後一個守則了!來看看吧! 記得copy所有東西 今天的守則專注於copy的部分,包含copy constructor跟copy assi...

鐵人賽 Software Development DAY 6

技術 [Day 06] 讓工廠再解藕 - 抽象工廠模式 (Abstract Factory Pattern)

抽象工廠 (Abstract Factory) 抽象工廠模式提供一個介面來建立相關或相依的物件家族,而不需要指定具體類別Head First Design P...

鐵人賽 Software Development DAY 4
C++ 實務基礎經驗 系列 第 7

技術 第三方套件 libuuid curl

第三方套件 libuuid curl 今天來介紹兩個常用的第三方套件。 環境 環境一樣,前一天的Dockerfile,然後專案拿Day1的cmaketest資料...

鐵人賽 自我挑戰組 DAY 25
Effective C++ 讀書筆記 系列 第 25

技術 [Day 25] Make interfaces easy to use correctly and hard to use incorrectly (2)

前言 今天,我們接續昨天介紹的守則,繼續來看看更具體 "Make interfaces easy to use correctly and hard...

鐵人賽 自我挑戰組 DAY 1
Effective C++ 讀書筆記 系列 第 1

技術 [Day 1] 前言

前言 又是一年一度的一期一會XD從2021年開始,這是第三度參加了。第一年是挑戰leetcode連續刷題一個月(Leetcode刷題筆記),因為工作主要使用的是...

鐵人賽 自我挑戰組 DAY 10
Effective C++ 讀書筆記 系列 第 10

技術 [Day 10] Explicitly disallow the use of compiler-generated functions you do not want

前言 今天的守則與前一則([Day 9] Know what functions C++ silently writes and calls)有強烈相關,就直接...

鐵人賽 自我挑戰組 DAY 19
Effective C++ 讀書筆記 系列 第 19

技術 [Day 19] Use objects to manage resources

前言 終於要開始第三章了~ 第三章總共有5個守則,馬上就來看看第一則吧! RAII- Resource Acquisition Is Initializatio...

鐵人賽 自我挑戰組 DAY 27
Effective C++ 讀書筆記 系列 第 27

技術 [Day 27] Prefer pass-by-reference-to-const to pass-by-value (1)

前言 今天的守則是討論function中的parameter傳遞的方式,傳參數的時候可能沒想太多就直接把要用的東西傳入,今天就來看看其中可能更好的做法~ Pas...

鐵人賽 Software Development DAY 4
C++ 實務基礎經驗 系列 第 10

技術 第三方套件 librdkafka

第三方套件 librdkafka 今天來介紹kafka的客戶端函式庫,kafka是個提供高效一致性的消息隊列平台。 環境 環境需要建立一個kafka的環境(使用...

鐵人賽 自我挑戰組 DAY 24
Effective C++ 讀書筆記 系列 第 24

技術 [Day 24] Make interfaces easy to use correctly and hard to use incorrectly (1)

前言 終於進入第四章了!第四章的主題是 "Designs and Declarations,是關於 設計與宣告好的C++介面的一些重點,最一開始是所有...

鐵人賽 自我挑戰組 DAY 23
Effective C++ 讀書筆記 系列 第 23

技術 [Day 23] Store new objects in smart pointers in standalone statements

前言 不知不覺就直接來到第三章最後一個守則了!今天的守則雖然簡單,但乍看之下不會直接想到原因,書中詳盡解釋了其中的道理,讓人有輕鬆掌握到知識的感覺XD 就來看看...

鐵人賽 自我挑戰組 DAY 18
Effective C++ 讀書筆記 系列 第 18

技術 [Day 18] Copy all parts of an object (2)

前言 接續昨天的內容,還剩最後一點補充。然後順帶偷渡一點第三章─ Resource Management 的前言介紹XD copying function不要混...

鐵人賽 自我挑戰組 DAY 16
Effective C++ 讀書筆記 系列 第 16

技術 [Day 16] Handle assignment to self in operator= (2)

前言 接續昨日([Day 15] Handle assignment to self in operator= (1))內容,我們看到需要確保self-assi...

鐵人賽 自我挑戰組 DAY 26
Effective C++ 讀書筆記 系列 第 26

技術 [Day 26] Treat class design as type design

前言 今天的守則有點像是一個check list,列了各種設計class時應該要思考的問題,就來看看有哪些要注意的吧! 設計class前不得不自問的 11+1...

鐵人賽 自我挑戰組 DAY 22
Effective C++ 讀書筆記 系列 第 22

技術 [Day 22] Use the same form in corresponding uses of new and delete

前言 今天介紹的是資源管理中,delete要注意是否需要delete [],一起來看看吧! 是不是array? new與delete請一致 今天的守則是: U...

鐵人賽 自我挑戰組 DAY 28
Effective C++ 讀書筆記 系列 第 28

技術 [Day 28] Prefer pass-by-reference-to-const to pass-by-value (2)

前言 昨天介紹了盡量pass by reference by const這條守則,並說明它可以bypass掉昂貴的construct, destruct操作,也...

鐵人賽 自我挑戰組 DAY 13
Effective C++ 讀書筆記 系列 第 13

技術 [Day 13] Never call virtual functions during construction and destruction

前言 轉眼間第二章的守則也介紹了一半,今天進入的則是第9條守則。也可以不時去回顧一下前面的守則:[Day 1] 前言。 不要在constructor, dest...

鐵人賽 自我挑戰組 DAY 12
Effective C++ 讀書筆記 系列 第 12

技術 [Day 12] Prevent exceptions from leaving destructors

前言 今天這則守則非常單純好理解,就來輕鬆一下吧! 別讓destructor丟exception 這個守則是: Prevent exceptions from...

鐵人賽 自我挑戰組 DAY 6
Effective C++ 讀書筆記 系列 第 6

技術 [Day 6] Use const whenever possible (2)

前言 今天就繼續來看const的其他特性。是說本書畢竟是經典老書,有些新語法不在其中,掌握精神之餘應該也要查詢一下是否有現代化手段可以解決。 bitwise c...

鐵人賽 自我挑戰組 DAY 15
Effective C++ 讀書筆記 系列 第 15

技術 [Day 15] Handle assignment to self in operator= (1)

前言 到了30天的中點啦!今天要介紹的是第11條守則,看來這個月結束之後可以紀錄到22條守則左右,繼續加油吧! 我們需要考慮指派給自己的情形 今天的守則跟昨天一...