C++ 11 Programming Training Course
This two-day course is designed for C++ developers looking to implement the C++11 standard in their professional work. It is especially beneficial for those working on financial applications, covering all new features with practical coding examples to be carried out in the lab.
This course is available as onsite live training in Kenya or online live training.Course Outline
- Overview of the C++ Standard
- C++03 vs C++11
- Automatic Type Deduction and decltype
- Uniform Initialization Syntax
- Deleted and Defaulted Functions
- nullptr
- Delegating Constructors
- Rvalue References
- C++11 Standard Library
- Threading Library
- New Smart Pointer Classes
- New C++ Algorithms
- Object Creation in C++11
- Move Semantics
- Variadic Templates
- Lambda Expressions
- New C++11 Libraries
- Concurrency in C++11
Requirements
C++ Programming
Need help picking the right course?
southafrica@nobleprog.co.za or +27 (0)10 005 5793
C++ 11 Programming Training Course - Enquiry
Testimonials (2)
We have been show many different tools (gdb,valgrind,callgrind, google sanitizers, ...) which was really great to have a base knowledge that we can extend when we will need to use one of those tools.
Thibault Marechal - Red Embedded Consulting Sp. z o.o.
Course - C++ 11 Programming
In my humble opinion, the trainer, he has explained everything with a perfect rhythm maintaining the balance between theoretical and practical material. Beside this, the material was fine.
Hector Gonzalez Gomez - ZITRO LABORATORY
Course - C ++ 11 Programación
Related Courses
Advanced C++
35 HoursThis instructor-led, live training in Kenya (online or onsite) is aimed at developers who wish to use advanced C++ programming techniques to develop complex, secure, and high-performance systems and applications.
By the end of this training, participants will be able to:
- Set up a development environment that includes all C++ libraries, packages and frameworks.
- Understand the features, components, and basic elements of C++.
- Create complex C++ applications using advanced programming techniques.
- Learn how to write readable, fast, and secure code in C++.
- Know the common security pitfalls in C++ language and how to mitigate them.
- Implement test strategies for code quality and security control.
- Use the diagnostics and debugging tools in C++ development.
C++ for Modeling Quantitative Finance
49 HoursThis course equips quantitative developers with advanced C++ techniques specifically tailored for financial modeling, covering core computational algorithms, data structures, derivatives pricing models, risk analytics, and performance-optimized implementations. Through a comprehensive project-based curriculum, it bridges theoretical finance with production-grade code, enabling professionals to build accurate, high-speed simulation systems essential for trading, market analysis, and risk management.
C/C++ Secure Coding
21 HoursOver the course of three days, this program introduces the fundamental practices for protecting C and C++ code from malicious exploitation. It addresses common vulnerabilities arising from memory management and input handling, while also emphasizing the core principles of writing secure software.
C++ for Embedded Systems
21 HoursIs C++ appropriate for embedded systems like microcontrollers and real-time operating systems?
Should object-oriented programming be applied in microcontroller environments?
Is C++ too abstracted from the hardware to ensure efficiency?
This instructor-led live training explores these questions, demonstrating through discussion and hands-on practice how C++ can be utilized to develop embedded systems with code that is precise, readable, and efficient. Participants will apply theoretical knowledge by building a sample embedded application in C++.
Upon completion of this training, participants will be able to:
- Grasp the principles of object-oriented modeling, embedded software programming, and real-time programming
- Generate code for embedded systems that is compact, fast, and secure
- Prevent code bloat resulting from templates, exceptions, and other language features
- Understand challenges associated with using C++ in safety-critical and real-time systems
- Debug a C++ program on a target device
Audience
- Developers
- Designers
Format of the course
- A blend of lectures, discussions, exercises, and extensive hands-on practice
C++, QT, ZeroMQ and Protocol Buffers
35 HoursThis instructor-led, live training in Kenya (online or onsite) provides a foundational introduction to C++, the Qt GUI framework, and various communication technologies such as ZeroMQ and Protocol Buffers, which are used for developing distributed applications.
By the end of this training, participants will possess the requisite knowledge and practical skills to write and compile an application using C++, Qt, and gcc on Linux Centos 6 or 7. They will also learn to integrate asynchronous messaging capabilities using ZeroMQ and Protocol Buffers.
Using C++ in Embedded Systems - Applying C++11/C++14
21 HoursThis training program aims to present C++ as the natural extension of C for object-oriented embedded system development. Because C++ encompasses C, the course guides participants through a seamless transition from C to C++, examining the internal mechanisms of C++ implementation. This insight is particularly crucial when deploying C++ in resource-constrained embedded environments. With the C++ standard undergoing significant updates with C++11 and the forthcoming C++14, this course focuses on key features introduced in these revisions that are highly beneficial for embedded development, such as high-performance memory management, concurrency in multicore systems, and bare-metal programming close to the hardware.
OBJECTIVES AND BENEFITS
The primary goal of this course is to enable you to utilize C++ in a correct and effective manner.
- Introduce C++ as an object-oriented alternative within the context of embedded systems
- Highlight the similarities and differences between C++ and C
- Understand various memory management strategies, with a focus on move semantics introduced in C++11
- Examine the underlying mechanics to understand how different C++ paradigms translate to machine code
- Utilize templates to create type-safe, high-level abstractions for bare-metal, hardware-proximate programming (including memory-mapped I/O and interrupts), particularly leveraging variadic templates from C++11
- Present useful design patterns applicable to embedded contexts
- Include practical exercises to reinforce concept understanding
TARGET AUDIENCE
This training is designed for C++ programmers who wish to begin applying C++ in embedded system projects.
PREREQUISITES
The course assumes fundamental knowledge of C++ programming, equivalent to completing our 'C++ – Level 1' and 'C++ Level 2 – Introducing C++11' courses.
PRACTICAL EXERCISES
Throughout the training, you will practice the concepts presented through a series of exercises. We will utilize the open-source and free Eclipse integrated development environment.
Functional Programming with C++
14 HoursThis instructor-led, live training in Kenya (online or onsite) is designed for web developers who wish to practice functional programming with C++.
By the end of this training, participants will be able to:
- Apply functional programming solutions to improve web application performance.
- Avoid data mutation and side effects using functional programming.
- Create web applications in a functional programming style.
Introduction to C++ Programming
28 HoursIntroduction to C++ Programming Training Course Information
Create, compile, and run C++ programs. Perform traditional programming operations. Write classes to produce maintainable projects. Manage dynamic data reliably and efficiently.
Advanced C++ Software Design
35 HoursRefines advanced C++ programming skills through five modules that explore object-oriented design patterns, memory management strategies, template metaprogramming, STL containers, and contemporary software architecture practices. This course provides senior engineers with a profound understanding of C++ internals and RAII principles, equipping practitioners with actionable techniques to optimize performance-critical systems, minimize memory overhead, and build maintainable applications capable of meeting complex software engineering demands.
Object Oriented Programming with C++
7 HoursThis instructor-led, live training in Kenya (online or onsite) is aimed at developers who wish to use C to apply object oriented programming techniques and improve software design.
By the end of this training, participants will be able to: implement object oriented concepts in C, design modular applications, apply encapsulation and abstraction, and structure maintainable codebases.
Programming in C++
35 HoursThis course provides a thorough exploration of the object-oriented language C++, illustrated through straightforward examples. Participants delve into the history and evolution of C++, analyzing procedural programming techniques, fundamental language constructs, and data types alongside declarations. By examining core object-oriented principles such as classes, operator overloading, and templates, learners gain mastery over abstraction, inheritance, and polymorphism. Through hands-on work with standard containers, algorithms, and iterators, teams investigate memory management, namespaces, and exception handling. Participants learn to compile programs, manage exceptions, and utilize file streams to develop robust, production-ready C++ solutions.
Qt Programming
21 HoursThis instructor-led, live training delivered in Kenya provides an in-depth exploration of Qt and its modules.
By the conclusion of this training, participants will have the requisite knowledge and hands-on experience to develop their own C++ applications using Qt.
Unreal Engine 4
21 HoursThis instructor-led, live training in Kenya covers the fundamentals of game development with Unreal Engine 4, offering participants the opportunity to create their own sample game.