Dr. Scott Meyers:
An Overview of the New C++ (C++11)

24. - 25. September 2012
in Stuttgart

Referent:
Dr. Scott Meyers

Sprache:
Englisch

Frühbucherpreis:

Beginn
9:00 Uhr - ca. 17:00 Uhr

Kosten
Bekanntgabe Januar 2012

Dies ist eine vorläufige Seminarbeschreibung, sie wird derzeit noch überarbeitet! Die endgültigen Inhalte werden voraussichtlich Januar 2012 veröffentlicht!

Specification of the new version of C++ (“C++11”) is finally complete, and many compilers (e.g., Visual C++ and Gnu C++) already offer many features from the revised language. And such features! auto-declared variables reduce typing drudgery and syntactic noise; Unicode and threading support address important functionality gaps; and rvalue references and variadic templates facilitate the creation of more efficient, more flexible libraries. The standard library gains resource-managing smart pointers, new containers, additional algorithms, support for regular expressions, and more. Altogether, C++11 offers much more than “old” C++. This intensively technical seminar introduces the most important new features in C++11 and explains how to get the most out of them.

Course Highlights

Participants will gain:

  • Knowledge of the most important C++11 features and how they help produce better programs.
  • Insights into how new features solve important problems.
  • Understanding of which features are useful primarily to library writers, which to class authors, and which to virtually all C++ developers.
  • Availability information regarding which features are available on which platforms.


Who Should Attend

Designers and developers who are using, considering using, or wish to know about the expanded capabilities of C++11. Attendees should be experienced with C++ and comfortable with its primary features (e.g., classes, templates, inheritance, STL, etc.). Familiarity with threading concepts (e.g., threads and mutexes) is helpful, but is not essential.

Format

Lecture and question/answer. There are no hands-on exercises, but participants are welcome – encouraged! – to bring computers to experiment with the material as it is presented.

Detailed Topic Outline
 

  • The History and Vocabulary of C++ Evolution
  • Sample Program: C++98 vs. C++11
  • Features for Everybody:
    • auto for Type Declarations
    • Range-Based for Loops
    • “>>” as Nested Template Closer
    • nullptr
    • Unicode characters and strings
    • Raw string literals
    • Uniform initialization syntax
    • Initializer lists
    • Lambda Expressions
    • Template Aliases
    • Threading Support
    • Library Enhancements:
      • New Container Features
      • Smart Pointers (shared_ptr, weak_ptr, unique_ptr)
      • Hash Tables
      • Singly-Linked Lists
      • Fixed-Size Arrays
      • Tuples
      • Regular Expressions
      • Generalized Functors (function)
      • Generalized Binder (bind)
      • New Algorithms
      • Other New Library Functionality
  • Features Primarily for Class Authors:
    • Move Support and Rvalue References
    • default Member Functions
    • delete Functions
    • Default Member Initialization
    • Delegating Constructors
    • Inheriting Constructors
  • Features Primarily for Library Authors:
    • Static Assertions
    • explicit Conversion Functions
    • Variadic Templates
    • decltype
    • Perfect Forwarding
  • Yet More Features (Overview)
  • Removed and Deprecated Features (Overview)
  • Sources for Further Information

pfeil Seminaranmeldung online