0845 757 3888 · info@xpertise.co.uk

On-line training course catalogue

C++ for C Programmers

Type of course: Classroom

Course details
Fee£1495
Days4
Course code CCPROG


We currently do not have public dates scheduled for this course.
If you have a requirement for this course, please contact us for the latest course information.

Print this page | Download as Word document |

Overview

This course is designed to teach C++ to C Programmers. ISO standard C++ is a general-purpose language that bridges different styles of programming and spans different platforms and different application styles. This course presents C++ by building from C and embracing modern C++ techniques. It develops the concepts and syntax through lectures, discussion and hands-on lab exercises.

The course is suitable for experienced C programmers. Previous knowledge of object-oriented concepts is advantageous but not required.

Prerequisites

Delegates should have experience of C Programming. Previous knowledge of object-oriented concepts is advantageous but not required.

Delegates will learn how to

  • Program in C++ from a C perspective and appreciate some of its more advanced features
  • Understand object-oriented and generic programming in C++
  • Use good practice and outline idioms for safe and sensible use of language features

Outline

C++ programming styles

  • Characterising modern C++
  • The role of objects and polymorphism

A brief tour

  • Differences from C; classes
  • Templates
  • STL and the standard library

Simple data types

  • Alternative initialisation and cast syntax
  • Pointer conversions
  • The bool type
  • Compile-time constants with const
  • Tags and type names

Convenient library

  • The library and namespace std
  • Using string, vector and map types

Functions

  • Pass by reference and const reference
  • Guidelines on argument passing
  • Overloading and default arguments
  • Operator overloading
  • Inline functions

Control flow

  • Declarations for loops and conditions
  • Try, throw and catch
  • Exception safety

Dynamic memory management

  • Type-safe allocation and deallocation with new and delete

Classes and objects

  • Encapsulation
  • Classes, member functions and data
  • Public and private
  • Const member functions
  • Class versus struct
  • The this pointer

Object relationships

  • Delegation and forwarding
  • Composition and association

Construction and destruction

  • Constructors and destructors
  • Dfault constructors
  • Member initialiser lists
  • Construction and destruction order

VALUE OBJECTS

  • Conversions for value objects
  • Explicit;
  • Default copying
  • Copy constructors
  • Member and non-member operators
  • Copy assignment
  • Copy prevention for non-value types

Exception Objects:

  • Using objects for exceptions
  • Safe copy assignment
  • Safe resource release

Templates

  • Generic programming
  • Function templates
  • Class templates
  • Templates in the standard library
  • auto_ptr for exception safety
  • Managing long type names

Containers:

  • The standard sequence containers
  • The standard associative containers

Iterators:

  • Iterator categories
  • Container iterators
  • Iterator and const_iterator
  • Stream iterators

Algorithms:

  • Sorting, searching and copying ranges
  • Refactoring loops with generic algorithms

Function Objects:

  • Using function objects with algorithms
  • Adapting associative containers

Interface-Based Programming:

  • Interface classes and pure virtual functions
  • Virtual destructors
  • Implementing interfaces with public derivation and overridden functions
  • Multiple base classes

Inheritance-Based Programming:

  • Generalisation, specialisation and substitutability
  • Astract classes with some implementation
  • Protected
  • Base-class construction
  • RTTI
  • Exceptions

Xpertise – C++ for C Programmers training courses

Xpertise provides C++ for C Programmers training courses from 7 UK locations: in Altrincham Manchester, Hinckley East Midlands, Leeds Yorkshire, London King William Street, Maidenhead Berkshire, Malmesbury Wiltshire and Washington Tyne & Wear – and at 44 partner locations nationwide.


Xpertise Training reserves the right to improve the specification and format of its courses for the benefit of its customers without notice to the customer.