Ota yhteyttä

Myyntipalvelu

Myynti

010 4321 001 Ota yhteyttä

Kesto: 4 päivää
Veroton hinta (+ alv 24 %): 3 301 €

Tästä asiakaskohtainen toteutus?

Toteutamme koulutuksia myös asiakaskohtaisina. Jätä yhteystietosi, ja tehdään juuri teille sopiva toteutus.

Voit maksaa:
Koulutuskortti

Paikka ja päiväys

Online
i Lue lisää

Osallistu koulutukseen kotoa tai työpaikaltasi

20.11 – 23.11
Swedish Svenska
R
Ilmoittaudu
11.12 – 14.12
Swedish Svenska
R
Ilmoittaudu
19.2 – 22.2
Swedish Svenska
R
Ilmoittaudu
9.4 – 12.4
Swedish Svenska
R
Ilmoittaudu
2.7 – 5.7
Swedish Svenska
R
Ilmoittaudu
Stockholm
20.11 – 23.11
Finnish Finnish
Ilmoittaudu
11.12 – 14.12
Finnish Finnish
Ilmoittaudu
19.2 – 22.2
Finnish Finnish
Ilmoittaudu
9.4 – 12.4
Finnish Finnish
Ilmoittaudu
2.7 – 5.7
Finnish Finnish
Ilmoittaudu

Jaa

Lataa pdf-muodossa

C++ Advanced Programming

This is the course for experienced C++ programmers with a need to expand their skills into a complete knowledge of the language and new ways to use it for stable, effective and well designed applications. The course is fully updated to the C++11 and C++14 standards, and is platform and IDE independent. Course focus is on the language itself and the most widely used idioms. For a course on the Standard Library, see T1233 Applied Modern C++.

Several labs illustrate the theory. Among the lab themes are resource allocation, advanced operator overloading, smart pointers, function objects, interfaces and abstract classes, exception safety, move semantics and universal references.

The course in January will be held in English!

Target audience

Developers with a good working knowledge of everyday C++, as from any basic course plus practical experience.

Prerequisites

Working knowledge of C++, as from T516 C++ Programming - Introduction plus practical experience

Language

Training material

Course material in English.

Informator Training Cloud

Our training portal supports your development throughout the training. The portal saves you time and is designed to give you a more effective learning experience - leading to better results and greater knowledge enforcement after the course. Read more >

Objectives:

The rarely used parts of the language and when to draw benefit from them.
Design with interfaces, abstract classes and concrete classes.
Design with templates, policy objects and iterators.
Idioms for immediate use or for inspiration.
The new features of the language in C++11 and C++14.
An introduction to the Standard Library

Course Outline:

Module 1. Introduction

Module 2. Compiler Generated Member Functions

Default constructor
Copy constructor
Assignment operator
Single argument constructor
Resource allocating classes
Move semantics
Initializer list constructors

Module 3. Class Members

Nested types
Static members
Const members
Reference members
Enum as a member
Function pointers and method pointers

Module 4. Inheritance and Interfaces

Overrides
Multiple inheritance
Object identity
Virtual calls from constructor/destructor
Abstract base classes
Interface
Typecasting

Module 5. Operator Overloading

Restrictions
Member or friend
Priority/associativity/commutativity
Increment operator
Index operator
Type converters

Module 6. Preprocessor Directives

Macros
Include guard
Conditional compilation
String operator
Catenation operator

Module 7. Templates

Type polymorfism
Instantiation
Function templates
Class templates
Type and value parameters
Templates and inheritance
Specializations

Module 8. Exceptions

Throw
Exception classes
Catch
Exception declarations

Module 9. Namespaces

Declaration
Nested namespaces
Alias
Using and namespaces

Module 10. Safe Bool Idiom

Classical Solutions
Safe Bool
The C++11 Solution

Module 11. Copy-Swap

Exception Safatey
Copy-Swap for Assignment
Copy-Swap for General Use

Module 12. Function Objects

The function call operator
Function pointer callback
Lambda expressions
The function standard class
Policy objects
Event objects


Module 13. Universal References

Overloading on lvalue/rvalue
Creating a Universal Reference
Perfect Forwarding

Module 14. Smart Pointers and Iterators

Smart Pointers ownership
Schemes for ownership transfer
Iterators
The Standard Library Iterators

Module 15. Standard Library Containers

Overview collections and algorithms
Templated collections in more detail
The string class
Iterators
Assessing time and time complexity

Module 16. Miscellaneous Standard Classes (optional)

Streams library
Thread and synchronization classes
Random numbers
Regular expressions
Time

"Läraren förklarade många komplicerade saker på ett sådant vis att det blev jättelätt att förstå principen och inte enbart hur de används. Bästa programmeringsläraren jag haft!" 
/ en nöjd deltagare 12/10-2015
Citat från tidigare deltagare