| Location | May | Jun | Jul | Aug | view later dates |
|---|---|---|---|---|---|
| Location | Sep | Oct | Nov | Dec | view earlier dates |
| Tabernacle Street, EC2 | |- | |- | |16 | |- | ![]() |
| Location | Sep | Oct | Nov | Dec | view earlier dates |
|---|---|---|---|---|---|
| Tabernacle Street, EC2 | |- | |8 | |- | |3 | ![]() |

| 16 Jul | 5 or more places available | £2,575 exc VAT | |
| 08 Oct | 5 or more places available | £2,575 exc VAT | |
| 03 Dec | 5 or more places available | £2,575 exc VAT | |
| Advanced C++ Development Techniques training in Tabernacle Street, EC2 | |||
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.
The course includes an appendix on the C++ 11 Standard Enhancements
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
The vCAP-DCA 5 is coming, and having a look at the blue print, there will be command line and as such the reference poster will be a good resource for revision
This article covers the various conn-options for the vMA
Not the type you thought, but an offering from VMware
I have written before on the native boot feature of Windows 7 where it can boot to a VHD, Virtual Hard Drive. In this blog though we look at adding in a VHD to a completely clean disk with no OS ....
Been on a Microsoft Offical Course and fancy some complentary information, have a look at Microsoft Virtual Academy.