T53: An Introduction to C++ Library Functionality in TR1 and Boost
Thursday, Oct 26, from 13:30 to 17:00
TR1 -- "Technical Report 1" -- specifies new functionality almost certain to be added to the C++ standard library. Boost is the most highly respected repository for open-source, cross-platform, peer-reviewed C++ libraries. Currently, it's also the best source for implementations of TR1 functionality, but Boost offers far more than what's in TR1. This seminar gives an overview of the contents of TR1 and shows examples of the most widely useful components, including smart pointers, hash tables, and regular expressions -- all of which are available at Boost. It then introduces a number of widely useful Boost libraries not in TR1, including smart pointers beyond those in TR1, lambda, file system, format, static assert, and more. The presentation is pragmatic, discussing features, "gotchas," and comparisons among related functionality (e.g., among TR1's two smart pointer types and Boost's additional four). If you program in C++ and are not familiar with TR1, Boost, or the libraries listed above, you need the information in this tutorial.
Intermediate: Attendees should be experienced C++ programmers familiar with templates and the STL. Knowledge of regular expressions and the ideas behind hash tables (e.g., hash functions, buckets) is helpful, because discussion of those libraries assumes such background.
Goals: 1. Familiarize attendees with TR1 and Boost. 2. Show practical examples of mainstream library functionality in TR1 and at Boost, including potential surprises and "gotchas."
Format: Slides/Lecture and Q&A.
Scott Meyers, Independent Consultant: Scott Meyers is one of the world's foremost experts on C++ software development. He wrote the best-selling Effective C++ series (Effective C++, More Effective C++, and Effective STL), wrote and designed the Effective C++ CD, is consulting editor for Addison Wesley's Effective Software Development Series, and is a member of the advisory board for the online journal, "The C++ Source." He received his Ph.D. in computer science from Brown University.