Course

Inhouse

Price on request

Description

  • Type

    Course

  • Methodology

    Inhouse

This course is designed for experienced programmers that need to write or maintain object-oriented C++ programs. The C++ programming language is a widely used powerful tool for producing modern object-oriented programs. This course guides experienced programmers through the complexities of writing and maintaining object-oriented programs in C++. It is fully up to date with the.

About this course

It is assumed that delegates attending this course are experienced in a block-structured language such as Pascal, modern variants of Basic, Smalltalk, Ada etc. Delegates should be familiar with concepts such as functions or procedures, control flow, arrays, and structures or records. Knowledge of C is neither assumed nor required.

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Course programme

Course Overview

This course is designed for experienced programmers that need to write or maintain object-oriented C++ programs. The C++ programming language is a widely used powerful tool for producing modern object-oriented programs. This course guides experienced programmers through the complexities of writing and maintaining object-oriented programs in C++. It is fully up to date with the latest ISO standard for C++ and includes coverage of the important Standard Template Library. The course is spread over a five-day period and comprises of instructor-led presentations and practical hands-on exercises. The practical sessions are structured to give the delegates the opportunity to put into practice all of the language constructs covered during the instructor-led sessions. The delegates will be able to take away with them copies of all the code they have written, along with sample solutions and demonstration code.
Prerequisites
  • It is assumed that delegates attending this course are experienced in a block-structured language such as Pascal, modern variants of Basic, Smalltalk, Ada etc.
  • Delegates should be familiar with concepts such as functions or procedures, control flow, arrays, and structures or records.
  • Knowledge of C is neither assumed nor required.


Objectives


    Delegates will be able to :
  • Write, maintain and debug C++ programs
  • Use dynamic memory
  • Make effective use of the Standard Library including the Standard Template Library
  • Write object-oriented code using encapsulation, inheritance and polymorphism.
Whats Included
  • 1 delegate per computer
  • Comprehensive colour course manual and exercises
  • Use of a Modern Training suite with 19 inch flat screen monitors
  • Lunch (When at our training venue)
  • Refreshments (When at our training venue)
  • Relaxed refreshment area at our training room
Course Content
C++ Program Components
  • Basic program components; functions, statements, file inclusion, input and output, keywords, variables, operators.
Data and Operators
  • Identifiers, fundamental data types and their operators, constants, operator precedence, conversions, casting, scope.
Structured Data Types
  • Enumerations, data structures, aggregation, Standard Library string class.
Control Flow
  • Boolean operators, conditional selection, iteration.
Functions
  • Functional modularity, passing data in and out of functions, pass by value and reference, member functions, optimization with inline.
Arrays and Vectors
  • Basic containers; arrays and the standard template library vector class, access through subscripting and member functions, C type strings.
Classes
  • Object-orientation and classes, encapsulation, automatic construction, copying and conversions.
Pointers
  • Concept of indirection, null pointers, using pointers with functions and arrays, pointer arithmetic.
Dynamic Memory
  • Accessing the heap or freestore with new and delete, dynamic arrays, automatic destruction.
Object Relationships
  • Aggregation and association, delegation, managing custody of dynamic memory, copying custodial objects.
Operator Overloading
  • Class operators, overloading with globals or members, lvalue operators, copy assignment.
Streams
  • Working with the Standard Streams; file streams, manipulators, string streams.
STL Containers
  • Introducing templates and the main Standard Template Library container classes; vector, deque, list, set and map.
  • Guidelines on choosing the right container for the job.
Iterators
  • Using Iterators to access the elements of Standard Template Library containers, introducing the standard algorithms.
Inheritance
  • Object-orientation and inheritance.
  • Creating and using derived classes, vertical delegation, standard conversions.
Polymorphism
  • Declaring and using virtual functions and the need for virtual destructors.
  • Pure virtual functions and abstract classes.
Advanced Features
  • Overview of some advanced features; exception handling, namespaces, multiple inheritance, smart pointers, template functions, extending the STL.

C++

Price on request