C++ Fundamentals: Introduction: Characteristics and principles of OOP, C++ Fundamentals: C++ data types, Operators, Expressions, Type conversion, iostream library, Control statements, Functions: Prototype, Arguments passing, Return type,Default arguments, Inline functions, Function overloading Classes: Classes and Objects, Defining classes, Creating objects, Defining member function, Static class members, Friend functions, Passing and returning objects to and from functions, Nesting of classes Constructors: Default constructors, Parameterized constructors,Constructor overloading, Constructors with default arguments, Copy constructors -Destructors.
Advanced C++ Features: Pointers, Dynamic memory management, new and delete operators, Pointers to objects, Pointers to object members, Accessing members, this pointer, Operator overloading: Overloading unary and binary operators, Type conversion: Between objects and basic types and between objects of different classes, Inheritance: Single Inheritance, Overriding base class members, Abstract classes, Constructors and destructors in derived classes, Multilevel inheritance,Multiple Inheritance, Hierarchical Inheritance, Hybrid Inheritance, Virtualfunctions, Virtual base class, File processing: Opening and closing files, File pointers, Filestream functions, Creating and processing text and binary files.
Contiguous Data Structures: Arrays: Structure of arrays, Representation of arrays, Operations on one dimensional arrays, Overloading operators for one-dimensional arrays, Multidimensional arrays, String representation and manipulation.
Non-Contiguous Linear Data Structures: Non-contiguous Data Structures: Lists: Representation and Traversing of linked list, Operations with linked list, Doubly linked list, Circular list, Stacks: Definition, Operation on stack, Implementation
using arrays and linked lists, Evaluation of arithmetic expressions, Queues: Definition, Implementations using arrays and linked lists, Circular queue,Applications of queues.
Searching and Sorting: Searching: Linear search, Binary search, Comparison of different methods, Sorting: Insertion, Bubble, Selection, Quick and Merge sort methods, Comparisons, Hashing: Different hashing functions, Methods for collision handling.
1. E. Balaguruswamy, Object oriented programming with C++
2. Robert C Lafore, Object oriented programming with C++
3. Bjarne Stroustrup, The C++ Programming Language, Addison Wesley.
4. E. Horowitz & S. Sahni, Fundamentals of data structures
5. Aron M, Tenenbaum, Data Structure Using C and C++