C++ Boost Library – Detailed Course Outline
Return to C++ and C Courses page
Copyright © 2009 - 2024, Anderson Software Group, Inc.
Section 1 - Resource Management with Boost
- RAII Model
- std::auto_ptr is Not Enough
- Smart Pointers
- Scoped Pointers
- Shared Pointers
- Intrusive Pointers
- Weak Pointers
Section 2 - General Boost Libraries
- Conversion Library
- Polymorphic Casts
- Polymorphic Downcasts
- Numeric Casts
- Lexical Casts
- Utility Library
- Static Assertions
- Checked Deletions
- Noncopyable Semantics
- Addressing Objects
- Controlling Overloads, Specializations
- Operator Library
- Comparison Operators
- Arithmetic Operators
- Iterator Operators
- RegEx Library
- Regular Expressions with C++
- Validating Input
- Searching and Replacing
- Iterators
Section 3 - Boost Containers
- Any Library
- Arbitrary Type Storage and Retrieval
- Storing Heterogeneous Types
- Predicates and Extractors
- Variant Library
- Variant Types
- Variant Type Storage and Retrieval
- Variant Visitations
- Tuple Library
- Returning Multiple Values from Functions
- Grouping Related Types
Section 4 - Boost Bind Library
- Using boost::bind()
- Placeholders and Arguments
- Binding Function Calls as Data
- Calling Member Functions
- Binding Mechanisms
- Binding to Member Variables
- Binding to Virtual Functions
- Design Approaches
- Functional Composition
- Value and Pointer Semantics
Section 5 - Boost Lambda Library
- What are Lambda Expressions?
- Design Approaches
- Adding New Placeholders
- boost::bind() with Lambda Expressions
- Writing Predicates
- Working with Lambda Expressions
- Lambda Control Structures
- Lambda Casting Operators
- Creating and Destroying Objects
- Throwing and Catching Exceptions
Section 6 - Boost Function Library
- Using boost::function<>
- Function Library Members
- Storing Function Objects
- Callbacks
- Free Function Callbacks
- Class Member Function Callbacks
- Stateful Function Objects
- Design Approaches
- Use with boost::bind()
- Use with Lambda Expressions
- Use with boost::thread
Appendix
- Boost Signal Library