xingd.net

.net related techonology

导航

推荐使用C++ TR1和boost库

Posted on 2005-06-08 17:05  xingd  阅读(5267)  评论(1编辑  收藏  举报
We already know what some of the new library functionality will be, because it's been specified in a document known as TR1 ("Technical Report 1" from the C++ Library Working Group).
 
以下是TR1中包含的新的库
  • The smart pointers  tr1::shared_ptr and tr1::weak_ptr.
  • tr1::function, which makes it possible to represent any callable entity (i.e., any function or function object) whose signature is consistent with a target signature.
  • tr1::bind, which does everything the STL binders bind1st and bind2nd do, plus much more
  • Hash tables used to implement sets, multisets, maps, and multimaps. 
  • Regular expressions, including the ability to do regular expression-based search and replace operations on strings, to iterate through strings from match to match, etc.
  • Tuples, a nifty generalization of the pair template that's already in the standard library.
  • tr1::array, essentially an "STLified" array, i.e., an array supporting member functions like begin and end.
  • tr1::mem_fn, a syntactically uniform way of adapting member function pointers.
  • tr1::reference_wrapper, a facility to make references act a bit more like objects.
  • Random number generation facilities that are vastly superior to the rand function that C++ inherited from C's standard library.
  • Mathematical special functions, including Laguerre polynomials, Bessel functions, complete elliptic integrals, and many more.
  • C99 compatibility extensions, a collection of functions and templates designed to bring many new C99 library features to C++.
  • Type traits, a set of traits classes to provide compile-time information about types.
  • tr1::result_of, a template to deduce the return types of function calls.
这14个库中,有10个来自于boost库。在C++开发过程中,尽可能的使用STL和boost库,尤其是列在TR1中的库。