C++ Standard Template Library

Detailed and modern C++ course about the Standard Template Library. This topic is the most common at C++ interviews, so every C++ developer should understand the internals. Become a master of STL and increase your C++ language knowledge with real cases and 19 really interesting tasks. With the help of a trainer, we will create the best playground for shooting your foot, measuring, comparing, and discussing the history and future with colleagues and experts.

  • duration 31 hours
  • Language English
  • format Online
duration
31 hours
location
Online
Language
English
Code
C-007
price
€ 750 *

Available sessions

To be determined



Training for 7-8 or more people?
Customize trainings for your specific needs

Description

This course is a deep investigation of Standard Template Library components:

- Functions

- Containers

- Algorithms

- Iterators

 

Consider reasons to attend this course:

* Your knowledge will be organized without gaps

* Practical tips, idioms, and guides

* Implementation notes

* Information about C++17 and C++20 is included

* Challenging tasks and hard questions are prepared for experienced developers

* 19 practice tasks

* “Think-times” (discussion topics or mini-quiz)

* Possibility to prove that your code is modern enough

After completing the course, a certificate is issued on the Luxoft Training form

Objectives

Be ready to answer basic and advanced questions about STL at an interview

  • Know which tool should be used for your task
  • Learn how to use STL classes and utilities
  • Know the cost of used tools
  • Convert your code to pure English
  • Write code with modern C++

Target Audience

Primary: C++ Developers (Junior/Regular/Senior)

    Optional: C Developers (Regular/Senior)

    Prerequisites

    • Basic knowledge of C++
    • Basic knowledge of CMake, GTest, Git

    Roadmap

    1. Introduction (15 min - theory)

    Acquaintance, training rules, topic, and methodology overview.

    2. Functional objects (2h – theory, 45 min - practice)

    A small talk about generic programming and callable objects. The second part is about functions related to STL. The third part describes transformations between different function types (function adaptors).

    3. Containers (11h – theory, 4h - practice)

    The main topic of the training. Contains visual representation, implementation details, use cases, corner cases, and operations overview for all containers. Container classification is given and explained.

    • Sequence containers (4h 30min – theory, 1h - practice)

    I. Common

    II. Vector

    III. List

    IV. Forward list

    V. Deque

    • Container adaptors (1h 30m – theory, 30m - practice)

    • Ordered associative (1h 40m – theory, 20m - practice)

    • Unordered associative (2h - theory, 1h 30m - practice)

    • Pseudocontainers (1h 20m – theory, 40m - practice)

    4. Iterators (2h – theory, 1h 30m - practice)

    Iterator model, classes, properties and operations are investigated. For stream iterators and iterator adaptors, implementation is discussed.

    5. Algorithms (4h 50m – theory, 2h 40m - practice)

    At this stage of training, we’ll continue to extend STL with new items. Has a lot of practice, drawings, and discussions. Includes algorithm overview, non-modifying and modifying sequence algorithms, sorting and searching, numeric algorithms, and discussions about the future of algorithms.

    • Algorithms overview (15m - theory)

    • Non-modifying algorithms (1h – theory, 30m - practice)

    • Modifying algorithms (3h - theory, 1h 30m - practice)

    • Sorting and searching (40m - theory, 20m practice)

    • Numeric (40m - theory, 20m - practice)

    • Bonus: the future is here (15 m - theory)



    Related courses

    You may also be interested in

    Discover more about professional growth and skills development

    contact us