CET Institute - ATT

Accelerated Technical Training

C++ Programming

Scheduled Classes

No sessions of this class are currently scheduled. Please check back soon.
Class Description: 

Course Content

  • Create, compile and run C++ programs
  • Write functions, decisions, loops and exceptions
  • Declare, use and distinguish variables, constants, arrays, pointers and references
  • Define and implement classes to produce reliable, reusable code
  • Performing arithmetic computations and string operations
  • Defining and calling top-level and class-member functions
  • Reading and writing formatted I/O
  • Using for loops and if/else decisions
  • Managing dynamic data
  • Extending a class with inheritance
Price: 
$2 300.00
Prerequisites: 

None.

Who Should Attend?: 

This course is is beneficial for professional programmers who are interested in programming with C++, including application and systems programmers, software engineers and their managers.

What You Will Learn: 

Introduction and Overview

  • Relating C, C++, Java and C#
  • The in-class development environment
  • Other development environments

C++ Programming Building Blocks

The main function and standard I/O

  • Main's specification and body
  • Displaying values and strings to cout
  • Reading values from cin
  • Formatting with stream manipulators

Objects, constants and references

  • Declaring and initializing variables
  • Utilizing C++ 11/14 new keywords
  • Integer and floating-point data types
  • Performing calculations and displaying results
  • Utilizing references for efficiency and constants for safety

Defining and calling functions

  • Passing arguments to functions and returning values from functions
  • Call-by-value vs. call-by-reference vs. call-by-address
  • Scope, duration and initial values variables

Decisions, loops and logic

  • Making decisions with if/else
  • bool vs. int logical values
  • if/else statement "chains"
  • Performing loops with while and for
  • Implementing C++ range-based for loops
  • Equality, relational and logical operators

Arrays, pointers and strings

  • Declaring and using arrays and pointers
  • Storing strings in character arrays
  • Accessing array elements via pointers
  • Pointers vs. references
  • Standard string class and functions

Defining C++ Classes and Objects

Encapsulating higher-level data types

  • Public member functions and private data members
  • Protected class members
  • Constructors and destructors
  • Self-reference: the this pointer
  • The class member operator (::)

Declaring, accessing and modifying objects

  • Manipulating arrays of objects, pointers to objects and references to objects
  • Invoking member functions
  • const member functions
  • Passing objects by value and by reference

Overloading and templates

  • Simplifying class interfaces
  • Function signatures
  • Overloading assignment (=) and insertion (\
  • Friend functions and classes
  • Explicit copy/move construction
  • Avoiding default assignment and copy construction
  • Utilizing STL templates to define families of classes

Separating interfaces and implementations

  • How separation supports code reuse
  • Building header files and code files

Extending Classes via Inheritance

Deriving new classes from existing classes

  • Construction and destruction of derived objects
  • Reusability via incremental extensions
  • Base classes and derived classes

Utilizing polymorphic functions

  • Overriding virtual base-class member functions in derived classes
  • Runtime lookup of functions through base-class pointers and references

Managing dynamic data

  • Allocating and deallocating memory with new and delete
  • Handling errors with try and catch
  • Avoiding memory leaks
  • Utilizing lambdas and smart pointers

Standards and Portability

  • Applicability to Windows and UNIX/Linux
  • ANSI/ISO C++ 11/14 and evolving standards
Duration: 
40 hours