Since being standardized in 1998 C++ has evolved considerably with updates in 2003 (C++03), 2011 (C++11), 2014 (C++14) and most recently in 2017 (C++17). In particular the C++11 release with Rvalues, move semantics, and lambdas has both revolutionized the language and completely changed recommended practices. This course looks specifically at how you as an experienced developer can take advantage of the best new modern features in the language.
We will look in depth at more elegant ways to structure your programs, modern design patterns, and discuss how CPU and memory hardware design influence how we write our programs. Working with all the latest features of the language is fundamental to improving readability, performance, and maintainability of your code. This class will ensure you’re in the best position as a developer, now and in the future.
Participants should be comfortable with programming in C++. Some previous experience with templates, and concurrent programming is strongly suggested.
What you will learn
- Readability and Elegance
- Types and type inference
- Smart pointers
- Function pointers, functors and lambdas
- CPU and Memory Architecture
- Performance Measurements
- Concurrent Programming
- Memory Models
- Synchronization primitives
- Modern Concurrent Patterns
Configuring CMake for successRead more
One common question I get on our Advanced C++ course is how the project structure should look, e.g. should I split the source code into multiple directories? How can I introduce unit tests? Should I compile into multiple libraries?
Each project is unique in what it needs, so in this blog post I’ll go over my general preferred setup and then look at how we adopted it for C++ on Android where we also interface with Kotlin/Java.
GPGPU Computing in C++ with CUDACategory: C++Duration: 2 daysPrice: 24 500 SEK
GPGPU Computing in C++ with AMPCategory: C++Duration: 2 daysPrice: 24 500 SEK
Contact us for details+46 40 61 70 720
All prices excluding VAT