這兒提到的新的語言特性的目標都在于簡化泛型編程,原因在于泛型編程已經是如此流行,“使得現有語言設施受到了很大的壓力”。許多“modern”的泛型編程技術接近于“write only”技術,并有孤立于其用戶的危險。為了使得泛型編程成為主流(就象面向對象編程成為主流那樣),我們必須使模板代碼更易于閱讀、編寫、和使用。許多目前的用法只管編寫時候的好處。但真正好的代碼應該簡潔(相對于它要做的事情來說)、易于檢查、和易于優化(也就是高效)。這就意味著許多簡單的思想可以在C++0x中簡單地進行表達,并且結果代碼堅定不移得高效。在C++98中前者的情況可不是這樣,至少對于非常大范圍的依賴于模板的技術的情況不是如此。借助于更好的類型檢查和類型信息更廣泛的使用,C++代碼將會變得更簡短、清晰、易于維護,也更容易獲得正確性。
庫設施
從理想上說,我們應該盡量不修改C++語言,而集中于擴充標準庫。然而,那些具有足夠大的通用性的能夠進入標準的庫設計起來并不容易,而且一如既往,標準委員會缺乏足夠的資源。我們由相對少的一組志愿者構成,并且都有“日常工作”。這就給我們能對新庫進行的冒險添加了不幸的限制。另一方面,委員會很早就開始庫的工作了,一個關于庫的技術報告(Library TR)也在最近被投票通過了,它提供了一些對程序員來說具有直接的用處的設施:
·哈希表(Hash Tables)
·正則表達式(Regular Expressions)
·通用智能指針(General Purpose Smart Pointers)
·可擴展的隨機數字設施(Extensible Random Number Facility)
·數學專用函數(Mathematical Special Functions)
我尤其賞識能夠有標準版本的正則表達式和哈希表(名為unordered_map)。此外,Library TR還為基于STL構建泛型庫的人們提供了廣泛的設施:
·多態函數對象包裝器(Polymorphic Function Object Wrapper)
·Tuple類型
·Type Traits
·增強的成員指針適配器(Enhanced Member Pointer Adaptor)
·引用包裝器(Reference Wrapper)
文章來源于領測軟件測試網 http://www.kjueaiud.com/