CPP Language


Training Objectives

At the end of C++ Programming training course, participants will:
• Become familiar with the syntax, semantic and all the main features of C++
• Understand how to implement any concepts based upon UML design and proper programming strategies
• Be aware of the C++ challenges and pitfalls and master the techniques to avoid them
• Understand the main strategies and several Design Patterns to build the simplest, most flexible and reliable C++ code

Prerequisites

Some knowledge and experience in C Programming.

Training Duration

Duration : 30 Hours.

Syllabus

  • Introduction to Programming languages
  • Procedure oriented programming.
  • Object oriented programming (OOP).
  • What is CPP?
  • Characteristics of Object oriented programming language.
  • Object.
  • Class.
  • Data encapsulation.
  • Data abstraction.
  • Polymorphism.
  • Inheritance.
  • Structure of C++ program.
  • Tokens.
  • Keywords.
  • Identifiers.
  • Datatype.
  • C++ program features.
  • Comments.
  • Classification of data types
  • Basic input/output statements.
  • Operators in C++.
  • Editor commands.
  • Reference variables.
  • Scope resolution operator.
  • Control structures.
  • Decision making statements
  • Simple if
  • If with else statement
  • Multiple if
  • Nested if
  • Switch case
  • Looping constructs
  • While loop
  • Do..while loop
  • For loop
  • Functions.
  • Library functions.
  • User defined functions.
  • Call by value
  • Call by reference
  • Inline functions.
  • Default arguments in functions.
  • Function overloading.
  • Classes and objects.
  • Creating objects.
  • Accessing class members.
  • Defining member functions.
  • Nesting of member functions.
  • Private member functions.
  • Arrays with in a class.
  • Array of objects.
  • Static Data members.
  • Constructors.
  • Destructor.
  • Friend functions.
  • Inheritance.
  • Single inheritance
  • Multilevel inheritance
  • Multiple inheritance
  • Hierarchical inheritance
  • Hybrid inheritance
  • Visibility of inherited members.
  • Virtual base classes.
  • Abstract classes.
  • Constructors in derived class.
  • Operator overloading.
  • Pointers.
  • Dynamic memory allocation
  • New operator.
  • delete operator.
  • Polymorphism.
  • static/early binding (linking).
  • Dynamic/late binding (linked).
  • Pure virtual functions.
  • Abstract class.
  • Files.
  • Introduction to Streams.
  • Templates.
  • Function templates
  • class templates.