C++ Introduction training course

Create Efficient Responsive Robust C++ Applications - Where Performance Matters

JBI training course London UK

"Very clear and professional presentation of content. Good mix of theory and practice. I particularly liked the detailed explanations of the language which helped reinforce the learning" SP, Assistant Risk Manager, C++ Introduction, February 2021 

Public Courses

10/08/26 - 4 days
£2500 +VAT
21/09/26 - 4 days
£2500 +VAT
02/11/26 - 4 days
£2500 +VAT

Customised Courses

* Train a team
* Tailor content
* Flex dates
From £1200 / day
EDF logo Capita logo Sky logo NHS logo RBS logo BBC logo CISCO logo
JBI training course London UK

  • Learn principles of Object Oriented Programming
  • Create Efficient Responsive Robust C++ Applications - Where Performance Matters
  • Explore Imperative Programming Features
  • Use Functions and Flow of Control
  • Understand Memory Management
  • Work with Pointers and Smart Pointers
  • Learn Data Structures and Classes
  • Implement Inheritance and Polymorphism
  • Apply Templates for Generic Programming
  • Understand use  of Operators and Streams
  • Gain an Introduction to the Standard Library
  • Explore New C++ 11 to C++20 Features

 

Here is a short video of an exercise on illustrating inheritance and polymorphism in C++ as it would be taught on JBI training's 4 day C++ introduction training course.

Introduction to Object Oriented Programming

  • Data abstraction
  • Encapsulation
  • Inheritance
  • Polymorphism

C++ Fundamentals

  • iostream
  • Use of cin and cout
  • Comments
  • Declaring variables
  • Scope
  • Lab: Create simple application providing input/ouput

Introduction to Functions

  • Defining functions
  • Passing by value
  • Passing by reference
  • Lab: Separate functionality into separate functions

Iteration and Flow of Control

  • Relational operators
  • for and while loops
  • do-while loop
  • Conditional expression
  • Switch statement
  • Lab: Add flow of control statements to provide user options

Arrays

  • Declaring arrays
  • Initialisation
  • Accessing arrays
  • Multi-Dimensioned arrays
  • Lab: Extent application to store data

Data Structure

  • Defining a structure
  • Accessing structure members
  • Lab: Store data within structures

Functions Revisited

  • Function overloading
  • Default arguments
  • Lab: Add function overloads

Pointers and Dynamic Memory

 

  • Overview of use of Pointers
  • Declaring pointers
  • Use of new and delete
  • Smart Pointers (new C++11 features)
  • Exception handling
  • Labs: Experiment with the use of pointers

Classes

  • Defining a class
  • Constructors
  • Destructor
  • Inline functions
  • New C++11 to 20 class features
  • Lab: Revise application to use classes and encapsulation

Inheritance - Polymorphism

  • Virtual functions
  • Pure virtual functions
  • Abstract classes
  • Lab: Enhance application to use inheritance and polymorphism

 

Introduction to Templates and Namespaces

  • Defining a namespace
  • Templates provide the basis for Generic Programming
  • Template functions
  • Template classes
  • Labs: Incorporate the use of a namespace; Experiment with the use of templates

Introduction to Operators

  • Defining operators
  • Unary and binary operators
  • Type conversion operators
  • Lab: Investigate the use of operators

Introduction to Streams

  • Formatted output
  • Input and error handling
  • File input and output
  • Lab: Add operator for output

Introduction to Standard Library

  • Containers and Container Adapters
  • Iterators and Iterator Adapters
  • Algorithms
  • Function Objects (Functors)
  • Labs: Store data within container; Experiment with use of algorithms and functors

Overview of C++ 11 to 20 Features

  • Lambda Functions
  • Lambda Functions vs Functors
  • Lab: Use Lambda Function as alternative to Functor

 

 

 

JBI training course London UK

Experienced Software Developers who are completely new to C++ programming or those with elementary skills in C++, who need to gain hands-on experience of developing commercial applications.

5 star

4.8 out of 5 average

"Very clear and professional presentation of content. Good mix of theory and practice. I particularly liked the detailed explanations of the language which helped reinforce the learning" SP, Assistant Risk Manager, C++ Introduction, February 2021 



“JBI  did a great job of customizing their syllabus to suit our business  needs and also bringing our team up to speed on the current best practices. Our teams varied widely in terms of experience and  the Instructor handled this particularly well - very impressive”

Brian F, Team Lead, RBS, Data Analysis Course, 20 April 2022

 

 

JBI training course London UK

Certification


Every delegate will be entitled to a certificate of achievement on completion of the course.

If you are missing your certificate - please use the link below to apply - you can also use this link to sign up for the JBI Training newsletter to receive technology tips directly from our instructors - Analytics, AI, ML, DevOps, Web, Backend and Security.
 



Our C++ training course will introduce you to a key programming language used across a wide range of industries for many application types.  Noted for its performance, it can be used for embedded application, server side process as well as GUI applications. 

Recent changes to the language in new standards have improved the languages safety and performance further.  New and improved C++ Library features have improved functionality and helped reduce development effort.

The JBI approach is to move quickly from the basics of the language to features which allow safer usage of pointers, namely, smart pointer.  Various alternative styles of programming are possible with C++, such as, object oriented, generic and functional. 

We show how C++ allows these different styles of programming.

JBI Training offers six C++ courses covering the full range of experience levels and specialisms. Available courses include C++ Introduction (four days), C++ Advanced (four days), C++ 20 and 23 (four days), Visual C++ and MFC (five days), Test Driven Development with C++ (three days), and AI-Assisted C++ Development (three days). All courses are available as scheduled classroom sessions in London, as live online instructor-led training, or as customised onsite programmes for development teams.
C++ is a high-performance, general-purpose programming language that gives developers a high degree of control over system resources and memory. It is used across a wide range of industries and application types including embedded systems, operating systems, game engines, financial trading systems, real-time processing, graphical user interfaces, server-side processes, and high-performance computing. C++ is valued for its combination of low-level memory control and high-level object-oriented and generic programming features, making it one of the few languages capable of delivering both performance and abstraction at scale. It remains one of the most widely used programming languages in systems and performance-critical software development.
The C++ Introduction course is a four-day programme designed for developers who are new to C++ or coming from another language such as C, Java, or C#. It covers the core language features including object-oriented programming, memory management, pointers and smart pointers, data structures, inheritance, polymorphism, templates, and an introduction to the Standard Library. The C++ Advanced course is a four-day programme for experienced C++ developers who want to deepen their expertise. It covers advanced templates and metaprogramming, C++ idioms and design patterns, the Standard Template Library in depth, the Boost libraries, policy-based design, and advanced use of language features for correctness and performance.
The C++ 20 and 23 course is a four-day programme covering the features introduced in the C++20 and C++23 standards — the most significant updates to the C++ language in over a decade. C++20 introduced concepts (constraints on template parameters), ranges (a new approach to working with sequences of data), coroutines (for asynchronous and cooperative multitasking), modules (a replacement for the traditional header file system), and significant improvements to the standard library. C++23 builds on these foundations with further library enhancements and language refinements. The course is designed for C++ developers who are already familiar with modern C++ (C++11 through C++17) and want to adopt the latest language standards in their codebase.
Test-driven development (TDD) is a software development practice in which tests are written before the implementation code they are intended to verify, following a red-green-refactor cycle. The developer writes a failing test, writes the minimum code needed to make it pass, then refactors the code while keeping the tests passing. JBI's three-day Test Driven Development with C++ course teaches this discipline in the context of C++ development, covering unit testing frameworks for C++, how to write effective and maintainable tests, applying TDD to object-oriented and generic C++ code, refactoring techniques, and how to integrate TDD into a professional C++ development workflow. It is suitable for C++ developers who want to improve code quality, reduce defects, and build more maintainable software.
The AI-Assisted C++ Development course is a three-day programme that teaches C++ developers how to work professionally and effectively with AI coding assistants such as GitHub Copilot, Claude Code, and similar tools in a C++ development context. The course covers how to write clear specifications and prompts that produce useful C++ code from AI agents, how to evaluate and critically review AI-generated C++ code for correctness, safety, and performance, how to apply test-driven development as a verification discipline when working with AI-generated code, and how to integrate AI coding tools into a professional C++ development workflow without compromising code quality or security. It is designed for practising C++ developers who are beginning to use or wanting to use AI coding tools more effectively.
Visual C++ is Microsoft's C++ development environment within Visual Studio, and MFC (Microsoft Foundation Classes) is a C++ class library that wraps the Windows API, enabling developers to build Windows desktop applications using object-oriented C++. The five-day Visual C++ and MFC course is designed for developers who need to build or maintain Windows desktop applications using Microsoft's C++ toolchain. It covers the Visual Studio development environment, the MFC application framework, window management, message handling, dialog boxes, controls, GDI graphics, file handling, and database access. It is particularly relevant for developers maintaining legacy Windows applications built with MFC, or those building new Windows desktop software in a Microsoft environment.
C++ compiles directly to machine code, giving it performance characteristics that managed languages such as C# and Java cannot match in scenarios where execution speed, memory control, or hardware proximity are critical. C# and Java run on managed runtimes (CLR and JVM respectively) which provide memory management, garbage collection, and platform portability at the cost of some control and performance overhead. C++ is the right choice when performance is paramount — such as in game engines, financial trading systems, embedded systems, operating systems, and real-time processing — or when direct hardware access or fine-grained memory management is required. For most business application development where performance is not the primary concern, C# or Java may be more productive. JBI offers training in all three languages.
Yes. All C++ courses at JBI can be delivered as customised onsite or online programmes for corporate development teams. Content can be tailored to the team's specific C++ standard (for example C++17 or C++20), the platforms and compilers they use, the application domain (embedded, finance, gaming, systems), and any specific language features or codebase challenges they want to address. Organisations with existing C++ codebases can request training that uses their own code as the basis for exercises, which is particularly effective for teams working through a migration to a newer C++ standard or adopting modern C++ practices in a legacy codebase. JBI has delivered C++ training for development teams at organisations including the BBC, NHS, Cisco, Sky, RBS, and EDF.
Yes. JBI's C++ training content is continuously reviewed and updated to reflect the latest ratified C++ standards and compiler support. This currently includes C++20 and C++23, with coverage of features such as concepts, ranges, coroutines, and modules. Course content also reflects current best practices in modern C++ development — including the use of smart pointers, RAII, the Standard Template Library, and the Boost libraries — as well as the growing role of AI coding assistants in C++ development workflows. Delegates learn skills that are current and applicable to professional C++ development today.

CONTACT
+44 (0)20 8446 7555

[email protected]

 

Copyright © 2026 JBI Training. All Rights Reserved.
JB International Training Ltd  -  Company Registration Number: 08458005
Registered Address: Wohl Enterprise Hub, 2B Redbourne Avenue, London, N3 2BS

Modern Slavery Statement & Corporate Policies | Terms & Conditions | Contact Us

POPULAR

AI training courses                                                                        CoPilot training course

Threat modelling training course   Python for data analysts training course

Power BI training course                                   Machine Learning training course

Spring Boot Microservices training course              Terraform training course

Data Storytelling training course                                               C++ training course

Power Automate training course                               Clean Code training course