C++ Level 2 – Introducing C++11

Day(s): 3
Dates/City:

våren 2013/Sverige

Price:

17.500 SEK

Overview:

In order to use C++ efficiently “all the way”, you apply inheritance and polymorphism ‑ the other corner stones of object orientation beside encapsulation. The concept of templates enables you to design and implement generic true re-usable code. The C++ standard library provides a lot of useful functionality without having to “redevelop the wheel”. The new C++ standard, a.k.a. C++11, extends the standard library with new features like multithreading, general purpose smart pointers, regular expressions, and many more items.

Goal/Benefits:

This three day training picks up where the “C++ - Basic-“-training ended. We will complete the practicing of object-orientation by applying inheritance and polymorphism. Furthermore we will look into many issues and features in C++ like:

·       Understand the importance of thorough memory management

·       Write generic code using templates

·       Get enough acquainted with the C++ standard library that “no new wheels has to be invented”

·       Introduce the new language features of C++11

·       Introduce the new C++11 standard library features

The major objective of this class is that you shall be able to use C++ in a “correct way”.

Audience/Participants:

This trainin[1]g is aimed C++-programmers who want to want to deepen the knowledge in C++.

Previous Knowledge:

The course requires basic knowledge in C++ programming, corresponding to our training ”C++ - Level 1”.

Practical Exercises:

During the training you will practice the presented topics in a number of exercises. For the participant who wants, the exercises can be carried out with making use of the new C++11 features - when applicable. We will use the open and free integrated development environment from Eclipse.

»Läs mer om C++11 i inlägget "Månadens skribent"

Contact at Nohau

Lena Bernhardsson

phone: +46 (0) 40 59 22 09
phone: +47 (0) 92 44 22 09 (no)
lena.bernhardsson@nohau.se

Content

Outline:

1.  The Class, Part II

  Inheritance

  Dynamic Binding – Polymorphism

  Virtual Function

·  Virtual Destructor

  Interface

 

2.  Templates

  Function Template

  Class Template

  Template Versus Inheritance

 

3.  New C++11 Language Features

  Uniform Initialization with Initializer Lists

  Automatic Type Deduction –
auto and decltype

  Fundamental Data Types

·  Standardized Word Widths

·  Scoped and Strongly Typed Enumerations

  Constructor Delegation

  Literals

·  String

·  User-defined

  Range-based Loops

  Rvalue references with Move Semantics

  Other Keywords:

·  constexpr

·  noexcept

·  decltype again:
New Function Declaration Syntax

  Lambdas – Anonymous Functions

  Variadic Templates

 

4.  The Standard Library, Part II

  Standard Template Library – STL

·  Architecture

  Containers:

·  std::vector, std::list, std::deque, std::set, std::multiset, std::map, and std::multimap

  Iterators

  Algorithms

  Utilities

std::auto_ptr

 

5.  New C++11 Standard Library Features

  Rvalue References and the Associated Move Support

·  Impact on components

  Tuples

  Multithreading

  Regular Expressions

  Hash-based Containers:

·  std::unordered_set, and std::unordered_map, and their multi-variants

  General-purpose Smart Pointers

·  std::unique_ptr, std::shared_ptr, and std::weak_ptr

 
Share |