Course Outline
Introduction
- Recent developments and updates in C++
- Overview of key C++ features and structural elements
- Principles of object-oriented programming
- Foundational aspects of C++ coding
Getting Started
- Configuring the development workspace
- Installation and setup of a C++ IDE
- Essential standard libraries and components
Advanced Programming in C++
- Utilizing Lambda expressions
- Standard containers and algorithmic techniques
- Concepts of Move semantics
- C++ coding conventions and style rules
- Pointer to implementation (Pimpl) idiom
- Techniques for Operator overloading
- Applying Polymorphism in C++
- Managing variables, arrays, and conditional logic
- Working with References and Pointers
- Exception handling mechanisms
- Other modern functions and implementation patterns
Security Programming
- C++ security features and industry best practices
- Modern memory management strategies
- Effective String handling techniques
- Integration with User Account Control (UAC)
- Identifying vulnerabilities and applying mitigation measures
Testing Strategies for C++
- Selecting appropriate test frameworks
- Performance analysis and metrics
- Writing effective unit tests
- Conducting integration and system-level tests
- Testing approaches for legacy code
- Black-box testing methods
Debugging the Code
- Setting conditional and function breakpoints
- Debugging multi-threaded applications
- Using performance and diagnostic tools
Summary and Next Steps
Requirements
- Familiarity with basic C++ programming concepts
Target Audience
- Software Developers
Testimonials (5)
The online-ness of it meant that we could save a lot of time. Much appreciated. Also, the fact that the trainer knew both c# and Cpp was a huge help since he could explain everything through knowledge we already possessed.
Gabor - Rheinmetall Electronics Hungary Kft
Course - Advanced C++
The pace was optimal, not too slow not too fast. The subjects we touched were very informal and interesting. I think I understood everything. We talked about what is the use case and why is that useful. The examples were small and concise was easy to understand. We could ask questions at every step and it was answered and explained fully and with great patience. We were also asked questions to make sure we understand the subject or have any questions. It was fun and entertaining although very informal and I think I learned a lot.
Gabor - Rheinmetall Electronics Hungary Kft
Course - Advanced C++
Lots of exercises and help. It was useful for the trainer to be able to use our individual project doucments to be able to help us fix our issue and complete the exercises. {Plenty of chance for asking questions too.
Matthew - Teledyne
Course - Advanced C++
I liked that we had exercises to do, the material was impressive and well structured and the trainer explained very well all the topics
Diana Toldas - Accenture Industrial Software Solutions S.A.
Course - Advanced C++
Enjoyed the flexibility and variety of topics, the combination of trainings and exercises meant that I could apply what I'd learnt straight away. I also enjoyed the projects on the last day to bring everything together.