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

From KlayGE
Jump to: navigation, search
m
 
(47 intermediate revisions by one user not shown)
Line 2: Line 2:
  
 
需要编译才能使用的boost库:
 
需要编译才能使用的boost库:
−
*Chrono(没有直接使用)
+
*'''Filesystem'''(在msvc和gcc中可以用TS或C++17的代替。)
−
*Date Time
+
−
*Filesystem
+
−
*Program Options(仅用于工具)
+
−
*Regex(仅用于工具)
+
−
*Signals
+
−
*System(没有直接使用)
+
−
*Thread
+
−
 
+
  
 
只有头文件的boost库:
 
只有头文件的boost库:
−
*Algorithm
+
*Algorithm/string
−
*Any
+
*'''Any''' (C++17)
−
*Array
+
−
*Assign
+
 
*Assert
 
*Assert
−
*Bind
+
*Container/flat_map
−
*Circular Buffer
+
*Core/noncopyable
−
*Container
+
*'''Optional''' (C++17)
−
*Foreach
+
*TypeIndex
−
*Function
+
*Utility/Operators
−
*Functional/Hash
+
*'''Utility/string_view''' (C++17)
−
*Integer
+
 
−
*Interprocess
+
标记为粗体的可以用C++11或C++17的功能代替。随着支持C++11/17的编译器的普及,这些库都会切换到[[使用到的C++11特性|C++11]]或[[使用到的C++17特性|C++17]]。除非迫不得已才用boost的。
−
*Lexical Cast
+
−
*Member Function
+
−
*MPL
+
−
*Operators
+
−
*Pool
+
−
*Random
+
−
*Ref
+
−
*Smart Ptr
+
−
*Static Assert
+
−
*Tokenizer
+
−
*Tuple
+
−
*Type Traits
+
−
*Typeof
+
−
*Unordered
+
−
*Utility
+
  
−
随着支持C++11的编译器的普及,以后打算逐渐切换到使用C++11的库。只有在不支持C++11的编译器上才采用boost。
+
[[en:Used boost libraries]]

Latest revision as of 02:32, 26 July 2019

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

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

  • Filesystem(在msvc和gcc中可以用TS或C++17的代替。)

只有头文件的boost库:

  • Algorithm/string
  • Any (C++17)
  • Assert
  • Container/flat_map
  • Core/noncopyable
  • Optional (C++17)
  • TypeIndex
  • Utility/Operators
  • Utility/string_view (C++17)

标记为粗体的可以用C++11或C++17的功能代替。随着支持C++11/17的编译器的普及,这些库都会切换到C++11或C++17。除非迫不得已才用boost的。