內容很不完整,僅僅是我自己所知的部分,如有知道詳細資料的同學們請一起來完成它,有錯誤的地方請幫我提出來,等資料多一點我再把文字內容整理一下,我目前就知道這么多了。
下面內容中沒有加入年代的,表示我不知道(IUnknown)。。。嘿嘿。
1990年7月,模板被加入C++。
1994年,C++標準委員會在圣迭哥舉行的一次會議期間Erwin Unruh展示了一段可以產生質數的代碼。這段代碼的特別之處在于質數產生于編譯期而非運行期。
SGI STL中大量使用Traits模板技術,整個庫使用模板技術構建。STL(標準模板庫)成為C++標準庫的代名詞。(哪年開始的呢。。。)
2000年6月,Krzysztof Czarnecki和Ulrich W.Eisenecker合著的《Generative Programming: Methods, Tools, and Applications》一書中,展示了使用C++模板元編程完成的編譯期判斷、循環等技巧。(這本書不是以C++為主,C++模板元編程只占一小部分)
2001年2月,Andrei Alexandrescu在出版的《Modern C++ Design》中,對于編譯期多態、編譯期配置策略等方面做了深入研究,把C++模板技術應用推同更高層次。(不知道是不是他最先研究到這個層次,不過我看到的資料很多是這么說的。)
boost庫是由C++標準委員會成員發起的一個C++準標準庫,主要是以模板技術構建,很多方面超過了MCD。(不過MCD依舊是我的最愛)
Blitz++和MPL是2個基于C++模板的高效數值計算程序庫。