c2
Connect on:
  • Home
  • Course Centre
    • Project Management >
      • Professional Project Management
      • Project Management Essentials
      • Managing Project Requirements
      • Scheduling & Cost Control Project Managers
      • Project Leadership, Management & Communication
      • Risk Management for Project Managers
      • Negotiation Skills for Project Managers
      • Managing Remote Project Teams
      • Project Quality Management
      • Project Procurement Management
      • Earned Value Management
      • Professional Project Management - Best Practice
      • Professional Project Management - Exam Preparation
      • PRINCE2® Foundation & Practitioner
      • PRINCE2® Overview
    • Agile Project Management Courses >
      • Agile Project Management
      • Using Scrum in organistations
      • Certified ScrumMaster
    • Java >
      • Core Java Programming
      • Advanced Java Programming
      • Java Programming & XML
      • Java Networking
      • Java Virtual Machine (JVM)
      • Java & Java EE Open Source Testing Tools
    • Java Enterprise Edition (EE) >
      • Enterprise Java with Hibernate and Spring
      • Developing Java Web Applications
      • Java & Java EE Open Source Testing Tools
      • Spring Framework Development
    • C/C++ Programming >
      • C Programming Techniques
      • C++ Programming Fundamentals
      • C++ for C Programmers
      • Advanced C++ Programming
      • C++ & STL Design Patterns
      • Object Oriented C++ for Real-time Applications
    • Unix/Linux >
      • Linux Fundamentals
      • Linux Administration Essentials
    • Windows Server Courses >
      • Installing and Configuring Windows Server 2012
      • Windows Server 2008 - Server Administration
      • Configuring Windows Server 2008 Active Directory
    • .NET Courses >
      • ASP.NET MVC 4.0
    • Perl Programming Courses >
      • Perl Programming
      • Advanced Perl Programming
    • Python Programming Courses >
      • Python Programming
    • Database Courses >
      • MySQL for Developers
    • CompTIA >
      • CompTIA Network+
    • Scripting >
      • JavaScript - Introduction
      • JavaScript - Advanced
    • Data Analysis & Design >
      • Data Analysis & Design - Introduction
      • Data Analysis & Design with UML
    • Microsoft Office Courses >
      • Microsoft Word - Introduction
      • Microsoft Word - Intermediate
      • Microsoft Word - Advanced
      • Microsoft Access - Introduction
      • Microsoft Access - Intermediate
      • Microsoft Access - Advanced
      • Microsoft Excel - Introduction
      • Microsoft Excel - Intermediate
      • Microsoft Excel - Advanced
      • Microsoft Excel - Dashboards
      • Microsoft Excel - Macros
      • Microsoft Excel - Expert
      • Microsoft PowerPoint - Level 1
      • Microsoft PowerPoint - Level 2
      • Microsoft PowerPoint - Advanced
      • Microsoft Outlook - Introduction
      • Microsoft Outlook - To Manage Your Time Efficiently
      • Microsoft Project - Introduction
      • Microsoft Project - Advanced
      • Microsoft Publisher - Introduction
      • Microsoft Visio - Introduction
    • Solaris >
      • Solaris 10 Administration
  • Testimonials
  • About
  • Contact

C ++ for C Programmers

Course Description

This C++ training course is designed for experienced C programmers.  Using a combination of theory and exercises, this course will give delegates grounding in fundamental object oriented design principles and will show how these can be applied in practical situations.

Course Duration

4 days

Course Objectives

On completion of this course delegates will be able to:

• Build extensible, adaptable and reliable C++ applications
• Use object oriented concepts and modelling
• Use the Unified Modelling Language (UML) notations
• Use the C++ programming language to develop OO software systems
• Be familiar with operator overloading for user defined types
• Understand and design OO systems using inheritance, polymorphism and dynamic binding
• Understand exception handling mechanisms in C++
• Understand generic programming using C++ templates

Course Content

Introduction to C++
Intrinsic data types, operators, C++ storage, pointers, arrays, references, functions and function pointers, arrays and header files   

Object Oriented Concepts
Introduction to important Object Oriented (OO) concepts including classes versus instances, coupling and cohesion, abstract versus concrete classes, inheritances, composition, association, polymorphic and dynamic binding, interface versus implementation, component-based development and introduction to the Unified Modelling Language (UML) as a tool for OO development

C++ Object Oriented Features
Classes and structs, definition versus implementation, encapsulation, access regions and information hiding, this pointer, member function definition, inline functions, friend functions and classes, constructors and destructors

Overview of Operator Overloading
Default operators, operator functions, overloading binary operators, overloading unary operators, friend and member functions, overloading assignment

Inheritance
Deriving classes, virtual functions, dynamic binding, private versus public inheritance, scope resolution, constructing derived classes, member initialisation list, multiple inheritance

Polymorphism
Declaring and using virtual functions and the need for virtual destructors, pure virtual functions and abstract classes

I/O Streams
C++ I/O library, C++ Stream Classes, Predefined Streams, Formatting I/O Operations, Manipulators, Overloading
<< and >> operators, File Streams, I/O Error Status, String Streams

Introduction to Templates
Parameterised types, template classes and functions, template instantiation, template arguments

Introduction to Exceptions
Purpose of exception handling, support for exception handling, grouping exceptions, resource management and termination semantics

Who should attend?

Experienced C programmers wishing to learn the fundamentals of object-oriented design using C++

Pre-requisites

Candidates must have a solid understanding of the C programming language and the underlying syntax.  Candidates should also have an appreciation of object oriented design principles.

Further Information

Those who have not programmed extensively in C should not attend this course.  These candidates should consider the course from c2, entitled “C++ Programming Fundamentals”.
Powered by Create your own unique website with customizable templates.