Learning Boost C++ Libraries

Solve practical programming problems using powerful, portable, and expressive libraries from Boost

Learning Boost C++ Libraries

Arindam Mukherjee

2 customer reviews
Solve practical programming problems using powerful, portable, and expressive libraries from Boost
Mapt Subscription
FREE
$29.99/m after trial
eBook
$28.00
RRP $39.99
Save 29%
Print + eBook
$49.99
RRP $49.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$28.00
$49.99
$29.99p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781783551217
Paperback558 pages

Book Description

Filled with dozens of working code examples that illustrate the use of over 40 popular Boost libraries, this book takes you on a tour of Boost, helping you to independently build the libraries from source and use them in your own code.

The first half of the book focuses on basic programming interfaces including generic containers and algorithms, strings, resource management, exception safety, and a miscellany of programming utilities that make everyday programming chores easy. Following a short interlude that introduces template metaprogramming and functional programming, the later chapters are devoted to systems programming interfaces, focusing on directory handling, I/O, concurrency, and network programming

Table of Contents

Chapter 1: Introducing Boost
How it all started
What is Boost?
Getting started with Boost libraries
Self-test questions
Summary
Chapter 2: The First Brush with Boost's Utilities
Simple data structures
Working with heterogeneous values
Handling command-line arguments
Other utilities and compile-time checks
Self-test questions
Summary
References
Chapter 3: Memory Management and Exception Safety
Dynamic memory allocation and exception safety
Smart pointers
Self-test questions
Summary
References
Chapter 4: Working with Strings
Text processing with Boost String Algorithms library
Splitting text using the Boost Tokenizer library
Regular expressions using Boost.Regex
Self-test questions
Summary
Chapter 5: Effective Data Structures beyond STL
Boost Container library
Fast lookups using Boost Unordered containers
Containers for dynamically-allocated objects
Expressive initialization and assignment using Boost.Assign
Iteration patterns using Boost.Iterator
Self-test questions
Summary
References
Chapter 6: Bimap and Multi-index Containers
Containers for multi-criteria lookups
Boost Multi-index containers
Boost Bimap
Self-test questions
Summary
References
Chapter 7: Higher Order and Compile-time Programming
Higher order programming with Boost
Compile-time programming with Boost
Domain Specific Embedded Languages
Self-test questions
Summary
References
Chapter 8: Date and Time Libraries
Date and time calculations with Boost Date Time
Using Chrono to measure time
Measuring program performance using Boost Timer
Self-test questions
Summary
References
Chapter 9: Files, Directories, and IOStreams
Managing files and directories with Boost Filesystem
Extensible I/O with Boost IOStreams
Self-test questions
Summary
Chapter 10: Concurrency with Boost
Creating concurrent tasks with Boost Thread
Managing shared data
Boost Coroutine
Self-test questions
Summary
References
Chapter 11: Network Programming Using Boost Asio
Task execution with Asio
Network I/O using Asio
Self-test questions
Summary
References

What You Will Learn

  • Write efficient and maintainable code using expressive interfaces from Boost libraries
  • Leverage a variety of flexible, practical, and highly efficient containers and algorithms beyond STL
  • Solve common programming problems by applying a wide array of utility libraries
  • Design and write portable multithreaded code that is easy to read and maintain
  • Craft highly scalable and efficient TCP and UDP servers
  • Build and deploy Boost libraries across a variety of popular platforms
  • Use C++11 functionality and emulate C++11 language features in C++03 code

Authors

Table of Contents

Chapter 1: Introducing Boost
How it all started
What is Boost?
Getting started with Boost libraries
Self-test questions
Summary
Chapter 2: The First Brush with Boost's Utilities
Simple data structures
Working with heterogeneous values
Handling command-line arguments
Other utilities and compile-time checks
Self-test questions
Summary
References
Chapter 3: Memory Management and Exception Safety
Dynamic memory allocation and exception safety
Smart pointers
Self-test questions
Summary
References
Chapter 4: Working with Strings
Text processing with Boost String Algorithms library
Splitting text using the Boost Tokenizer library
Regular expressions using Boost.Regex
Self-test questions
Summary
Chapter 5: Effective Data Structures beyond STL
Boost Container library
Fast lookups using Boost Unordered containers
Containers for dynamically-allocated objects
Expressive initialization and assignment using Boost.Assign
Iteration patterns using Boost.Iterator
Self-test questions
Summary
References
Chapter 6: Bimap and Multi-index Containers
Containers for multi-criteria lookups
Boost Multi-index containers
Boost Bimap
Self-test questions
Summary
References
Chapter 7: Higher Order and Compile-time Programming
Higher order programming with Boost
Compile-time programming with Boost
Domain Specific Embedded Languages
Self-test questions
Summary
References
Chapter 8: Date and Time Libraries
Date and time calculations with Boost Date Time
Using Chrono to measure time
Measuring program performance using Boost Timer
Self-test questions
Summary
References
Chapter 9: Files, Directories, and IOStreams
Managing files and directories with Boost Filesystem
Extensible I/O with Boost IOStreams
Self-test questions
Summary
Chapter 10: Concurrency with Boost
Creating concurrent tasks with Boost Thread
Managing shared data
Boost Coroutine
Self-test questions
Summary
References
Chapter 11: Network Programming Using Boost Asio
Task execution with Asio
Network I/O using Asio
Self-test questions
Summary
References

Book Details

ISBN 139781783551217
Paperback558 pages
Read More
From 2 reviews

Read More Reviews

Recommended for You

Boost C++ Application Development Cookbook Book Cover
Boost C++ Application Development Cookbook
$ 29.99
$ 21.00
Python Machine Learning Book Cover
Python Machine Learning
$ 35.99
$ 25.20
Qt 5 Blueprints Book Cover
Qt 5 Blueprints
$ 39.99
$ 28.00
Mastering Object-oriented Python Book Cover
Mastering Object-oriented Python
$ 26.99
$ 18.90
Application Development with Qt Creator - Second Edition Book Cover
Application Development with Qt Creator - Second Edition
$ 26.99
$ 18.90
Mastering Qt 5 Book Cover
Mastering Qt 5
$ 35.99
$ 25.20