Advanced C++ Development Techniques — A 5 day course

contact usEnquire about this course


C++ is the standard language for implementing object-oriented designs, but although based on C, C++ introduces many subtle syntactic and design issues. For developers whose C++ experience goes back further, many of the changes as a result of standardisation make standard C++ a very different programming environment.

This course will keep the audience abreast of these changes. It covers four main areas: new and advanced language features; using the standard library; implementing object-oriented concepts and patterns in C++; effective C++ programming techniques and idioms. It also suggests ways to maximise efficiency, code quality, and reusability.

Delegates will gain a greater understanding of the capabilities and potential pitfalls of the C++ language and will be more able to use C++ language features to write robust, quality software and you will also have a good grounding to make the best use of specific component technologies, such as COM and CORBA.

This a comprehensive five-day course with a combination of lectures and practical sessions for each chapter to reinforce the topics covered throughout the course. The practicals use code skeletons, so that you can concentrate on specific C++ features.


After completing this course, students will be able to:


Evolution of Standard C++

C++ and OO Refresher

Copying and Conversions


Delegation Techniques

Subscripting Techniques

Template Functions

Template Classes

Iterators and Algorithms

Exception Handling

Exception Safety

Memory Management

Reference Counting

Inheritance Techniques

Template Techniques

Functional Abstraction

Suitable For

Experienced C++ programmers wishing to substantially enhance their development skills.


You must have solid and genuine experience of C++ including class definitions and member functions, constructors and destructors, references, virtual functions and new and delete operators.

Ideally, you will have attended one of our C++ programming courses and have been using C++ solidly for at least six months.

You should also have an appreciation of object-oriented principles, possibly from attending the Object-Oriented Software Development or an object-oriented analysis and design course.