Effective Programming with Boost

Advanced Boost Library Use

Module 1: Strings and Text

  • Converting string to and from numerical values
  • Localisation and Unicode
  • Type safe formatting of arguments using a format-string
  • Regular expressions
  • Splitting strings into tokens

Module 2: Utilities

  • Foreach and assign
  • Automatic operators
  • Smart pointers
  • Variants and Visitors

Module 3: Input / Output and System

  • Streams
  • Stream buffers
  • I/O filters
  • Serialisation
  • Program Options
  • Time and Date

Module 4: Networking

  • Sockets
  • Hostname resolution
  • Socket I/O streams
  • Timers

Module 5: Function Objects

  • Boost function
  • Binding parameters
  • Lambda expressions
  • Signals and Slots

Module 6: Mathematics

  • Rational numbers
  • Common factors
  • Statistical distributions
  • Special functions
  • Random number generators

Module 7: Containers, Iterators and Algorithms

  • Constant sized arrays
  • Bi-directional maps
  • Cyclic buffers
  • Propery map
  • Property tree
  • Boost extension of STL containers
  • Creating iterators

Module 8: Generic Programming

  • Type traits
  • Concept checking
  • Conditional template specialisation

Module 9: Metaprogramming using MPL

  • Compile time programming
  • Sequences
  • Algorithms
  • Metafunctions

Module 10: Function Types

  • The need for inspection
  • Decomposing functions
  • Synthesising functions