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.
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
- Define and use Friend 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
Inheritance
- 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