條款48 認識template元程式設計 263

2021-10-01 19:40:09 字數 465 閱讀 8272

template metaprogramming(tmp,模板元程式設計)是編寫template-based c++程式並執行於編譯期的過程。

tmp有兩個偉大的效力:

(1)它讓某些事情更容易。

(2)由於template metaprograms執行於c++編譯期,因此可將工作從執行期轉移到編譯期。

基於第2個效力產生3個結果:

(1)某些錯誤原本通常在執行期才能偵測到,現在可在編譯期找出來。

(2)使用tmp的c++程式可能在每一方面都更高效:較小的可執行檔案、較短的執行期、較少的記憶體需求。

(3)編譯時間變長了。

tmp內容有點難理解,需要完全弄懂條款47,以後用到再完善。

(1)tmp可將工作由執行期移往編譯期,因而得以實現早期錯誤偵測和更高的執行效率。

(2)tmp可被用來生成「基於政策選擇組合」的客戶定製**,也可用來避免生成對某些特殊型別並不適合的**。

條款50 提高對C 的認識

class base class derived public base derived pd new derived pd f 10 錯誤 名字查詢先於型別檢查,現在derived類中找到f函式,然後進行型別檢查,報錯 問題在於derived f隱藏了base f,即使它們取的是不同的引數型別 所...

C 友元的認識

先附上基本和c 程式設計思想裡第五章p134 p135 差不多的 供修改及以後 逐步理清概念 include using namespace std class x 預先宣告 不完全定義 class y class y class x 四加乙個friend東西。friend void g x int...

我站在中石油48元之顛

我站在中石油48元之顛 眼含熱淚向山下俯瞰 看那高高聳立的井塔 看那黑色石油井噴的壯觀 看那井架旁忙碌的股民 看那莊家騙錢後得意的笑顏 我站在中石油48元之顛 感嘆那董事長要回報祖國股民的肺腑之言 雖說港股發行只有一元 那也是肥水沒流外人田 因為大陸和香港的股民都是兄弟姐妹,血脈相連 我站在中石油4...