The course fully covers the basics of programming in the “C++” programming language and presents the fundamental notions and techniques used in object-oriented programming.

    Programming in C++

    Learning Outcomes

    At the end of the course the participant will

    • Learn what Is Object Oriented Programming
    • Learn to write C++ programs
    • Be able to explain the different components of Object Oriented Programming

    Getting started with C++

    • Define the structure of a C ++ program
    • Indentify the standard input and output function
    • Use of comments and width(), end() functions
    • Using the editor

    Getting started with C++

    • Indentify the C ++ character Set
    • Discuss the identifiers and keywords
    • Explain the various data types and qualifiers
    • Indentify the C ++ variables

    Operation and Expressions

    • Identify C ++ operators
    • Assignment operator
    • Arithmetic operator
    • Compound Assignment operators
    • Relational operators
    • Logical operators
    • Bit-wise operators
    • Understand the  precedence and order of evaluation
    • Discuss mixed mode expressions and implicit type conversations
    • Indentify C++ shorthands

    Data types, variables and Constants

    • Indentify the C ++ character Set
    • Discuss the identifiers and keywords
    • Explain the various data types and qualifiers
    • Indentify the C ++ variables

    Program Control Statements -1

    • The if statement
    • The if…else statement
    • The if …else if …else statement
    • Simple and compound statements
    • Nested ifs
    • The switch statement
    • Nested switch

    Program Control Statements -2

    • Indentify the interaction constructs
      • The while loop
      • The do … while loop
      • Nested while and do… while loops
      • The  for loop
      • Multiple initializations/increments in for loop

    Header files

    • Discus some important Header files
      • stdio.h
      • string.h
      • ctype.h
      • math.h

    Basic Object – Oriented Concepts

    • Discuss the following
      • The Object- Oriented Approach
      • Drawbacks of Traditional Programming
      • Object – Oriented Programming
    • Discuss basic Object – Oriented Concepts such as
      • Objects
      • Classes
      • Properties
      • Methods
      • Abstraction
      • Inheritance
      • Encapsulation
      • Polymorphism
    • Compare Classes with structures
    • Describe Private and Public Sections of Classes
    • Define Member Functions
    • Use the Objects and Member Functions of a class
      • Define Objects
      • Access Member Functions
      • Pass and Return Objects
    • Discuss briefly the features of C++ and another OO language( Smalltalk)

    More on Classes

    • Use the scope resolution operator
    • Use dynamic memory allocation with
      • New
      • Delete
    • Use Pointers to objects
    • Define and use Constructors
    • Define and use Destructors
    • Define the ‘’Const’’ keyword
    • Define and use the’’ this’’ pointer
    • Describe how objects and functions are arranged in memory
      • Static Data Members
      • Static member Functions
    • Describe type conversations using
      • Converting by assignment
      • Type casting

    Function Overloading And References

      • Understand the concept of functions with default arguments
      • Define and use Friend functions
        • Advantages
        • Disadvantages
        • Friend classes
      • Describe function overloading
        • Various data types
        • Different number of arguments
        • Describe the scope for function overloading
      • Explain the use of reference arguments
        • Passing references to functions
        • Returning references from functions
      • Define and use Inline functions

    Operator Overloading

    • Describe Operator Overloading
      • Unary operators
      • Binary operators
      • Binary arithmetic operators
      • Compound assignment operators
      • Comparison Operators
    • Describe overloading of the Assignment operator
    • Describe copy Constructors
    • Describe conversation functions which help in conversion
      • From basic types to User- Defined types
      • From User – defined types to basic types
      • Between objects of Different Classes
    • Indentify operators that cannot be overload


    • Describe Single Inheritance
    • Describe Base classes and Derived Class
    • Access Base class members and use pointers in classes
    • Describe types of inheritance
    • Describe Constructors and Destructors  under inheritance
    • Describe how to call Member Functions of the Base Class and Derived
    • Describe Container classes

    Multiple inheritance and polymorphism

    • Describe Multiple Inheritance
      • Constructors under Multiple Inheritance
      • Ambiguity in multiple inheritance
      • Multiple Inheritance with a common base
    • Describe Virtual Base Classes
      • Constructors and Destructors
    • Use Pointers to objects to access Member functions
    • Describe Virtual functions
    • Describe Polymorphism
    • Describe Dynamic  binding
    • Describe pure Virtual functions
    • Describe Abstract classes
    • Describe Virtual Destructors