Difference between revisions of "使用到的boost库"

From KlayGE
Jump to: navigation, search
m
m
Line 29: Line 29:
 
*Operators
 
*Operators
 
*Optional
 
*Optional
*Pool
+
*Random(可以用C++11代替)
*Random
+
 
*Ref
 
*Ref
 
*Signals2
 
*Signals2

Revision as of 09:23, 4 January 2013

KlayGE的很多代码都依赖于boost。以下列出使用到boost中的各个部分。

需要编译才能使用的boost库:

  • Chrono(可以用C++11代替)
  • Date Time(没有直接使用)
  • Filesystem(在VC11中可以用TR2代替)
  • Program Options(仅用于工具)
  • Regex(仅用于工具,可以用C++11代替)
  • System(可以用C++11代替)
  • Thread(可以用C++11代替)

只有头文件的boost库:

  • Algorithm
  • Any
  • Array(可以用C++11代替)
  • Assign
  • Assert
  • Bind
  • Circular Buffer
  • Container
  • Foreach(可以用C++11代替)
  • Function
  • Functional/Hash
  • Integer(可以用C++11代替)
  • Interprocess
  • Lexical Cast
  • Member Function
  • MPL(if_可以用C++11代替)
  • Operators
  • Optional
  • Random(可以用C++11代替)
  • Ref
  • Signals2
  • Smart Ptr
  • Static Assert(可以用C++11代替)
  • Tokenizer
  • Tuple(可以用C++11代替)
  • Type Traits(可以用C++11代替)
  • Typeof(可以用C++11代替)
  • Unordered(可以用C++11代替)
  • Utility(result_of可以用C++11代替)

随着支持C++11的编译器的普及,以后打算逐渐切换到使用C++11的库。只有在不支持C++11的编译器上才采用boost。