Difference between revisions of "Used boost libraries"

From KlayGE
Jump to: navigation, search
Line 13: Line 13:
 
*Circular Buffer
 
*Circular Buffer
 
*Container/flat_map
 
*Container/flat_map
 +
*Core/noncopyable
 
*Lexical Cast
 
*Lexical Cast
*Lock free
+
*Lockfree
*Operators
+
 
*'''Optional''' (C++17)
 
*'''Optional''' (C++17)
 
*Signals2
 
*Signals2
*Utility/noncopyable
+
*Utility/Operators
  
 
Items marked as bold font can be replaced by features in C++11 or C++17. Along with the popularize of C++11/17-supported compiler, those libraries are switched to [[Used C++11 features|C++11]]'s or [[Used C++17 features|C++17]]'s. Boost libraries are used only when necessary.
 
Items marked as bold font can be replaced by features in C++11 or C++17. Along with the popularize of C++11/17-supported compiler, those libraries are switched to [[Used C++11 features|C++11]]'s or [[Used C++17 features|C++17]]'s. Boost libraries are used only when necessary.
  
 
[[zh:使用到的boost库]]
 
[[zh:使用到的boost库]]

Revision as of 20:58, 11 June 2017

Much code in KlayGE depend on Boost. Here's the list of used libraries.

The used Boost libraries that must be built separately:

  • Filesystem (Can be replaced by C++17's on VC12+.)
  • Program Options (Only used in toolset.)
  • System (Not used directly. No dependency on VC12+.)
  • Test (Only used in test)

Header-only Boost libraries:

  • Algorithm/string
  • Any (C++17)
  • Assert
  • Circular Buffer
  • Container/flat_map
  • Core/noncopyable
  • Lexical Cast
  • Lockfree
  • Optional (C++17)
  • Signals2
  • Utility/Operators

Items marked as bold font can be replaced by features in C++11 or C++17. Along with the popularize of C++11/17-supported compiler, those libraries are switched to C++11's or C++17's. Boost libraries are used only when necessary.