Review of Procedure Oriented Programming, Basic concepts of Object Oriented Programming – Object, Class, Encapsulation, Inheritance, Polymorphism; Benefits of OOPs, Applications of OOP.
A comparison of C and C++, Structure of C++ program with Class, Preprocessor directives, C++ Statements – Input/Output, Comments, Tokens, Keywords, Identifiers, Constants, Data types – string, pointer, reference, boole, enumeration, array, complex number; typedef names, type compatibility, type conversion, qualifier – const, volatile; Operators in C++, Operator Precedence and Operator Overloading; C++ expressions – New and Delete.
Introduction, The main() function, Function prototype, Call by reference, Return by reference, Inline functions, Default arguments, const Arguments, Function Overloading, Friend and Virtual functions, pointer to functions.
Introduction – declaration and definition of a Class, defining member functions, C++ program with a Class, Making an outside function Inline, Nesting of member functions, Arrays within a class, Static data members, static member functions, Objects – global & local objects, scope & lifetime, memory allocation for objects, dynamically allocated objects, pointers to objects, arrays of objects, function arguments with objects, returning objects; const member functions
Introduction, Constructors, Parameterized Constructors, Multiple constructors in a class, Constructors with default arguments, Dynamic initialization of objects, Copy constructor, Constructing two-dimensional arrays, const Objects, Destructors.
Introduction, Defining operator overloading, Overloading unary operators, Overloading binary operators, Overloading binary operators using Friends, Rules for overloading operators, overloading a comma operator, overloading the output operator , Type conversion.
Introduction, Defining derived classes, Single inheritance, Making a private member Inheritable, Multilevel inheritance, Multiple inheritance, Hierarchical inheritance, Hybrid inheritance, Virtual base classes, Abstract classes, Constructors & Destructors in base & derived classes.
Pointer, Virtual Functions and Polymorphism: Introduction, Pointers, Pointers to Objects, this pointer, Pointers to derived classes, type-checking pointers, pointers to members, Virtual functions, Pure virtual functions. Managing Console I/O and File I/O: C++ streams, C++ stream classes, examples of formatted and unformatted I/O operations, Classes for file stream operations, Methods of Opening and Closing a File, Examples of Opening file using constructor open(), file modes (simple programming exercises).