Live Chat
Monday - Friday 8am - 6pm EST Chat Now
Contact Us
Monday - Friday 8am - 8pm EST 1-866-716-6688 Other Contact Options
Checkout

Cart () Loading...

    • Quantity:
    • Delivery:
    • Dates:
    • Location:

    $

C++ Programming

New – Develop the ability to design and write programs in the C++ language.

GK# 6952

Course Overview

TOP

Develop the ability to design and write programs in the C++ language, emphasizing object-oriented approaches to designing solutions.

Schedule

TOP
  • Delivery Format:
  • Date:
  • Location:
  • Access Period:

$

What You'll Learn

TOP
  • Constructors and Destructors 
  • Inheritance
  • Virtual Functions
  • Pure Virtual Functions
  • References and Constants
  • New and Delete
  • Casting in C++
  • Class Methods and Data
  • Overloaded Functions
  • Overloaded Operators
  • Exception Handling
  • Standard Template Library
  • STL Containers

Outline

TOP
Viewing outline for:

Classroom Live Outline

Course Introduction

  • Course Objectives
  • Course Overview
  • Suggested References

Classes 

  • Creating a Data Structure
  • Methods
  • Object Scope
  • C++ Input and Output
  • Namespaces
  • Data Abstraction
  • Enforcing Data Encapsulation
  • File Organization
  • Classes in C++
  • Objects
  • This Pointer

Constructors and Destructors 

  • Debug Output
  • The Default Constructor
  • When are Constructors Called?
  • The Destructor
  • The Copy Constructor
  • Other Constructors
  • Why Did It Work Before?
  • Composition
  • The Report Class
  • Code Reuse
  • Initialization Lists

Inheritance

  • Inheritance
  • Bugreport
  • Protected Access Modifier
  • Access and Inheritance
  • Constructors and Inheritance
  • Initialization Lists Revisited
  • Multiple Inheritance

Virtual Functions

  • Inheritance and Assignment
  • Inside Report’s Assignment Operator
  • Using Pointers – A Quick Look at Basics
  • Class Assignment and Pointers
  • Static Binding
  • Dynamic Binding
  • Polymorphism
  • The show_rep() Function
  • Using the show_rep() Function
  • Designing Member Function Inheritance

Pure Virtual Functions

  • Bugfix and Its Relationship with Bugreport
  • Bugfix: Association with Bugreport
  • Using Bugfix with show_rep()
  • Adding Bugfix to the Hierarchy
  • Coding for the Document Class
  • Reexamining the Document Class
  • Pure Virtual Functions
  • Updated: Designing Member Function Inheritance

References and Constants

  • References
  • Displaying References
  • Changing References
  • Pass by Reference
  • Returning by Reference
  • Constant Variables
  • Constant References
  • Constant Methods

New and Delete

  • Array Allocation
  • The Report Class
  • Compiler Version of the Copy Constructor
  • Guidelines for Copy Constructors
  • The Report Constructors and New
  • The Report Destructor and Delete
  • Virtual Destructors

Casting in C++

  • Casting: A Review
  • New Casting Syntax
  • Creating a String Class
  • The String Class
  • The Conversion Constructor
  • Expanding Our Casting Options
  • Casting Operator
  • Using the Casting Operator

 lass Methods and Data

  • Class Data
  • Class Methods
  • Using the New Data
  • More on Class Methods

Overloaded Functions

  • Function Overloading
  • Using Overloaded Functions
  • Rules for Overloading
  • Overloading Based on Constness
  • Default Arguments
  • Invoking Functions with Default Arguments

Overloaded Operators

  • The Basics of Overloading
  • Overloading operator+
  • Coping with Commutativity
  • Non-Commutative Operators
  • Friends and Their Problems
  • The Assignment Operator
  • Overloading the << Operator
  • Using Date with cout

Exception Handling

  • Why Exception Handling?
  • Try / Catch / Throw
  • Exception Classes
  • Standard Exception Hierarchy
  • Multiple Catch Blocks
  • Catching Everything
  • Unhandled Exceptions
  • Exception in Constructors and Destructors
  • Designing for Exceptions

Standard Template Library

  • Class Template Concepts
  • Standard Template Library (STL) Overview
  • Containers
  • Iterators
  • Iterator Syntax
  • Non-Mutating Sequential Algorithms
  • Mutating Sequential Algorithms
  • Sorting Algorithms
  • Numeric Algorithms
  • auto_ptr Class
  • String Class

STL Containers

  • Container Classes
  • Container Class Algorithms
  • Vector Class
  • Additional vector Class Methods
  • Deque Class
  • List Class
  • Set and Multiset Classes
  • Map and Multimap Classes

Appendix A – Reference Sheets

  • Constants, References, and Pointers
  • Input/Output
  • This Pointer
  • The Complete Report/Document Hierarchy

Appendix B – Templates

  • Scenario
  • Designing an Array Class
  • Code for FloatArray
  • Code for IntArray
  • Templates
  • Template Syntax
  • Using Templates
  • Using Classes with Templates
  • Additional Template Features
  • Standard Template Library

Appendix C – Sample Problems

  • Banking System
  • Library Card Catalog
  • Diagrams for Banking and Library Problems
  • Object Diagram - Banking
  • Event Trace Diagram - Banking
  • Object Diagram – Library
  • Event Trace Diagram - Library

Appendix D – Other C++ Features

  • Namespaces
  • The static_cast and reinterpret_cast operator
  • The dynamic_cast operator
  • The const_cast operator
  • mutable Data Members
  • The bool Datatype
  • New Operator Failure

Prerequisites

TOP

C Programming or equivalent knowledge.

Who Should Attend

TOP

C programmers responsible for the development of advanced applications or systems programs in C++.

Course Delivery

This course is available in the following formats:

Classroom Live

Receive face-to-face instruction at one of our training center locations.

Duration: 5 day

Virtual Classroom Live

Experience expert-led online training from the convenience of your home, office or anywhere with an internet connection.

Duration: 5 day

Request this course in a different delivery format.
Enroll