
singleton 單件模式 示例代碼 Flyweight 享元模式 實例代碼 State 狀態模式 原始代碼 重構代碼 Memento備忘錄 實例代碼 Composite組...
對象創建模式 工廠模式 原始程序 重構程序 原始程序 重構程序1 重構程序2 模型實現 模型實現 Facade 門面模式 Proxy 代理模式 原始程序 重構程序 Adapt...
面向對象設計的原則 衡量一個設計模式成功與否的關鍵1.依賴倒置原則(DIP) 高層模塊(穩定)不應該依賴于低層模塊(變化),二者都應該依賴于抽象(穩定)。 抽象(穩定)不應該...
algorithm是一個函數模板,他看不見container,對其一無所知,所以他需要的一切信息都必須從iterators取得,而iterator必須能夠回答algorith...
deque deque其實是分段連續,即在其內部并不是連續分布的。但抽象為連續的分布。如下圖:image.pngimage.png deque可以前后擴充。其中map可以...
OOP(Object-Oriented) vs. GP(Generic Programming)OOP將dates和methods聯系在一起,而GP將他們分開,這樣Conta...
重要的C++參考網站:cplusplus.com CppReference STL六大容器 容器containers 容器的分類容器的性質主要分為Sequence Cont...
C++對象模型 (32位系統中)對于類成員如果是空類占1個字節,如果有虛函數,每個虛函數會有一個vptr指針占4個字節,如果有靜態類成員變量,其在global date me...
轉換函數轉換函數無參數,不用寫返回類型(但必須有返回值)。例如operator double () const {...} 在構造函數前加explicit 關鍵字可以阻止編譯...
面向對象編程 Inheritance繼承 Composition復合 Delegation委托 Composition(復合) 表示 has a Container -> C...
1.頭文件中的防御式聲明。例如編寫complex.h 應該 在開頭寫 #ifndef __COMPLEX__ #define __COMPLEX__ 結尾 ...
三大函數:拷貝賦值、拷貝構造、析構 class內有指針的情況下不能使用編譯器默認的構造、賦值、析構函數。特別是拷貝構造,拷貝賦值函數。 對于含有指針的拷貝賦值函數,首先要進行...