Course Code: introcprog
Duration: 28 hours
Prerequisites:

a:0:{}

Overview:

For those with a background in a procedural programming language, this course provides a foundation in C++ syntax and usage, as well as object-oriented programming. With this training, you learn how to use C++ functions and variables, leverage advanced features — including constructors, destructors, inheritance, and polymorphism — and gain an understanding of how C++ offers greater ability than C.

  • At least one year of programming experience using a compiled, procedural language such as Pascal, FORTRAN, COBOL, PL/1, or Ada
  • Prior experience with C, C++, or Java is not assumed
  • HTML or SQL experience alone is not adequate

Introduction to C++ Programming Training Delivery Methods

  • After-course instructor coaching benefit
  • After-course computing sandbox included
Course Outline:

Introduction and Overview Course Information

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

  • 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
Sites Published:

United Arab Emirates - Introduction to C++ Programming

Qatar - Introduction to C++ Programming

Egypt - Introduction to C++ Programming

Saudi Arabia - Introduction to C++ Programming

South Africa - Introduction to C++ Programming

Morocco - Introduction to C++ Programming

Tunisia - Introduction to C++ Programming

Kuwait - Introduction to C++ Programming

Oman - Introduction to C++ Programming

Kenya - Introduction to C++ Programming

Nigeria - Introduction to C++ Programming

Botswana - Introduction to C++ Programming

Slovenia - Introduction to C++ Programming

Croatia - Introduction to C++ Programming

Serbia - Introduction to C++ Programming

Bhutan - Introduction to C++ Programming

Nepal - Introduction to C++ Programming

Uzbekistan - Introduction to C++ Programming