iT邦幫忙

c++相關文章
共有 490 則文章

技術 [LeetCode] 88. Merge Sorted Array

EasyRelated Topics: Array / Two Pointers / SortingLeetCode Source 解題想法 題目要求要 i...

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

技術 [Day 30] Declare data members private

前言 不知不覺就第30天了~有始有終地來看看今天的守則吧!今天要介紹的是第22條守則~ 相對來說簡單明瞭好實踐,就抱著輕鬆的心情來看看背後的道理吧! 為什麼不要...

鐵人賽 自我挑戰組 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...

鐵人賽 自我挑戰組 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 27
Effective C++ 讀書筆記 系列 第 27

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

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

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

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

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

鐵人賽 自我挑戰組 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 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 22
Effective C++ 讀書筆記 系列 第 22

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

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

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

技術 [Day 21] Provide access to raw resources in resource-managing classes

前言 今天的守則又跟第三章開頭介紹的([Day 19] Use objects to manage resources)用object來管理資源有關,延伸下去其...

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

技術 [Day 20] Think carefully about copying behavior in resource-managing classes

前言 今天繼續來看resource managing系列的第二個守則,看看開始用物件來管理resource後,還有哪些注意事項。 更多的RAII 今天的守則是:...

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

技術 [Day 19] Use objects to manage resources

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

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

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

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

鐵人賽 自我挑戰組 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 15
Effective C++ 讀書筆記 系列 第 15

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

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

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

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

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

鐵人賽 自我挑戰組 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 11
Effective C++ 讀書筆記 系列 第 11

技術 [Day 11] Declare destructors virtual in polymorphic base classes

前言 今天的守則也跟前兩則有點關係,直接來看看~ 記得把多型的base class destructor設為virtual! 這個守則是: Declare d...

鐵人賽 自我挑戰組 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)有強烈相關,就直接...

鐵人賽 Software Development DAY 12

技術 [Day 12] 回顧比較 — Decorator / Adapter / Facade 三種 Design Patterns

目的比較 敘述 目的 Adapter 將一個類別的介面轉換為另一個介面 使原本由於介面不相容而不能一起工作的兩個類別可以一起工作 Decor...

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

技術 [Day 9] Know what functions C++ silently writes and calls

前言 終於進入第二章了!第一章是C++的一些基本概念,而第二章是關於 "Constructors, Destructors, and Assignme...

鐵人賽 Software Development DAY 11

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

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

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

技術 [Day 8] Make sure that objects are initialized before they're used (2)

前言 接續前一天的內容,再來看看書上有提到的一些關於物件初始化的內容。 initialization的順序 初始化的順序規則如下: base class&g...

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

技術 [Day 7] Make sure that objects are initialized before they're used (1)

重點 進入第四條準則: Make sure that objects are initialized before they're used C++中的物件...

鐵人賽 Software Development DAY 9

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

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

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

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

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

鐵人賽 Software Development DAY 8

技術 [Day 08] 獨一無二的物件 - 單例模式 (Singleton Pattern)

單例模式 (Singleton Pattern) Singleton is a creational design pattern that lets you...