Book your Advanced C++ Development Techniques Training Course
This five day course is being run times on Monday 12th March 2012 and Monday 21st May 2012 in London,
Book this course with us today from as little as £2,475.00 + VAT and with our price guarantee you can be confident of getting great value. Our team of experienced independent booking administrators will make the joining process painless and by providing feedback on your experiences you’ll also influence the Coursebookers independent course ratings.
THE COURSEBOOKERS PRICE GUARANTEE
The CourseBookers price guarantee means that if you find your course cheaper online before booking we will match price. Unlike many other booking administration companies, we have no booking fees! We've also negotiated special rates on your behalf with all of our training providers, and in some cases we can offer very competitive late booking discounts. These are always ready to view on our web site when available and are updated daily.
Expert Help
If you would like
advice, or to book, call
one of our experts on
Open: 9am - 5:30pm
Monday- Friday

| Date | Location | Rating | Price | ||
|---|---|---|---|---|---|
| Monday 12 March 2012 | London | ![]() ![]() ![]() ![]() | £2,475.00+VAT | ||
| Monday 21 May 2012 | London | ![]() ![]() ![]() ![]() | £2,475.00+VAT |
Book your course now with Coursebookers!

Making an enquiry to Coursebookers couldn't be easier, just fill out the form to the left or call 01920 460232 and our team will be in touch within 48 hours.
Remember:
- Not only are we great value, we can also boast no booking fees
- Human administrators make booking & coordination simple and painless
- Coursebookers is vendor neutral we can offer unbiased and independent advice
- If you have complex booking requirements we're happy to help! Call our team on 01920 460232 to discuss your needs
- We ensure all our courses meet our high standards, meaning you'll only ever see "the best of the best" on Coursebookers!
Download Course OutlineThis 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.
- 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.
- Describe advanced inheritance issues, such as private inheritance, multiple inheritance, and virtual base classes
- Use advanced C++ language features and programming techniques, such as Run-Time Type Identification (RTTI), smart pointers and delegation
- Use different memory management techniques and strategies to customise and optimise memory usage in a C++ program
- Design, implement and use template functions and template classes
- Take advantage of the standard C++ library
- Design and use container classes and iterators
- Use C++ exceptions to simplify error handling in large programs
Evolution of Standard C++
- ISO C++; Changes to the core language; Overview of the standard library
C++ and OO Refresher
- Abstraction and encapsulation; Composition and association; Inheritance and polymorphism; Patterns and idioms
Copying and Conversions
- The staticcast, dynamiccast, constcast and reinterpretcast keyword casts; Logical vs physical const-ness and the mutable keyword; Converting constructors and the explicit keyword; User defined conversion operators; Copy construction and assignment
Scope
- Static class members; The Singleton pattern; Nested classes; Nested class forward declarations; The Cheshire Cat idiom; Namespaces
Delegation Techniques
- The Object Adapter pattern; The Null Object Pattern; The Proxy pattern; Overloading the member access operator; Smart pointers; The Template Method pattern; Factory objects
Subscripting Techniques
- Overloading the subscript operator; Overloading with respect to const-ness; Smart references; Multi-dimensional subscripting; Associative containers
Template Functions
- Using and implementing generic algorithms with template functions; Overloading and specialising template functions; Template instantiation and linkage
Template Classes
- Using and implementing generic types with templates classes; Multiple template parameters; The standard vector, list, pair, and map template classes
Iterators and Algorithms
- The need for Iterators; The standard library (STL) iterator model; Generic algorithms using iterators; STL algorithm pitfalls; Introduction to function objects
Exception Handling
- Classifying and handling exceptions; Catching and throwing exceptions; The standard exception class hierarchy; Uncaught exceptions; Strategies for handling exceptions
Exception Safety
- Resource acquisition idioms for exception safety; Exceptions in constructors; Exceptions in destructors; Exception safe classes; STL exception safety guarantees
Memory Management
- Object life cycle; Allocation failure; Customising memory allocation; Optimising allocation for a class through caching; Derivation safe allocation; Controlling timing of construction and destruction
Reference Counting
- Reference counting shared representation; Reference counted strings for copy optimisation; Subscripting issues; Smart pointers for simple, automatic garbage collection
Inheritance Techniques
- Subtyping vs subclassing; Abstract and concrete base classes; Inheritance scoping issues; Multiple inheritance; Virtual base classes; Interface classes; Mixin classes; Runtime type information (RTTI); Private and protected inheritance; The Class Adapter pattern
Template Techniques
- Templating on precision; Template adapters; Default template parameters; Template specialisation; Trait classes; Member templates; Non-type template parameters; Optimising template code space
Functional Abstraction
- Traditional callbacks using function pointers; The Command pattern; More on function objects; Member function pointers
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.
QA training has over 25 years of experience of supplying high standard training courses in many Business, Management and IT Technical areas. Since 1983 the company has grown to have 25 training centres across the UK offering businesses routes to advance on a local and national level.
QA have a dedicated team of permanent instructors and teaching consultants who constantly improve the courses to ensure the highest possible standard of training is available.
Main menu
Software Vendor
IT Technical
Business Skills
- Project Management (163)
- ITIL (21)
- PRINCE2 (48)
- Reporting (18)
- HR (25)
- Health and Safety (3)
- Management (71)
- Business Development (4)
- Strategic Management (3)
- Personal Development (202)
- Leadership (70)
- Administration (21)
- Finance (32)
- Sales and Marketing (58)
- IT Service Management (83)
- Customer Service (21)
- Legal (8)

