C++
Wednesday, 27 August, 2025
  Unit 1 – Principles of OOP, Tokens, Control Statements
    1. Procedure-oriented programming
    2. Object-oriented programming paradigm
    3. Basic concepts of OOP
    4. Benefits of OOP
    5. Applications of OOP
    6. What is C++?
    7. Applications of C++
    8. Input/output operators
    9. Structure of a C++ program
    10. Introduction to namespace
    11. Tokens
    Keywords
    Identifiers
    Basic data types
    User-defined types
    Derived data types
    Symbolic constants
    Type compatibility
    Declaration of variables
    Dynamic initialization of variables
    Reference variables
    12. Operators in C++
    Scope resolution operator
    Member referencing operator
    Memory management operator
    Manipulators
    13. Control structures
    Simple if, if…else, nested if else, switch
    for, while, do…while
    14. Functions in C++
    The main function
    Call by reference
    Return by reference
    Inline function
    Default arguments
    Const arguments
    Function overloading
    --
  Unit 2 – Classes and Objects, Constructors, Destructors
    15. C structures revisited
    16. Specifying a class
    17. Local classes
    18. Nested classes
  19. Defining member functions, nesting of member functions
  20. Private member function
  21. Making outside function inline
  22. Arrays within a class
  23. Memory allocation for objects
  24. Static data members
  25. Static member functions
  26. Arrays of objects
  27. Objects as function arguments
  28. Friendly functions
  29. Returning objects
  30. Const member function
  31. Pointer to members
  32. Characteristics of constructor
  33. Explicit constructor
  34. Parameterized constructor
  35. Multiple constructors in a class
  36. Constructor with default argument
  37. Copy constructor
  38. Dynamic initialization of objects
  39. Constructing two-dimensional array
  40. Dynamic constructor
  41. Multiple Inheritance Level (MIL), advantages of MIL
  42. Destructors
  --
Unit 3 – Operator Overloading, Type Conversion, Inheritance
  43. Concept of operator overloading
  44. Overloading unary and binary operators
  45. Overloading of operators using friend function
  46. Manipulation of string using operators
  47. Rules for operator overloading
  48. Type conversions
  49. Comparison of different methods of conversion
  50. Defining derived classes
  51. Types of inheritance (Single, Multiple, Multilevel, Hierarchical, Hybrid)
  52. Virtual base class & abstract class
  53. Constructors in derived class
  54. Application of constructor and destructor in inheritance
  55. Containership
  56. Inheritance vs Containership
  --
Unit 4 – Pointers, Virtual Functions, Polymorphism, RTTI, Console I/O
  57. Pointer to object
  58. Pointer to derived class
  59. this pointer
  60. Rules for virtual function
  61. Virtual function and pure virtual function
  62. Run Time Type Identification (RTTI)
  63. C++ Streams
  64. C++ Stream Classes
  65. Unformatted I/O operations
  66. Formatted I/O operations
  67. Use of manipulators
  --
Unit 5 – Files, Exception Handling, Templates, STL
  68. File stream classes
  69. Opening and closing a file
  70. Error handling
  71. File modes
  72. File pointers
  73. Sequential I/O operations
  74. Updating a file (random access)
  75. Command line arguments
  76. Overview of exception handling
  77. Need for exception handling
  78. Components of exception handling
  79. Introduction to templates
  80. Class templates
  81. Function templates
  82. Member function templates
  83. Overloading of template function
  84. Non-type template argument
  85. Introduction to STL
  86. Overview of iterators
  87. Overview of containers