What you'll learn

The course will equip you with the skills to solve competitive programming and real-time problems using C++. It emphasizes the principles of object-oriented programming, including encapsulation, inheritance, and polymorphism, making it highly effective, flexible, and suitable for various applications such as system software, game development, embedded systems, and high-performance computing.

  • Basic concept of C++, Token, Identifiers, Variables, Data types cin and cout , Operator, Types cast Type Casting, Scope Resolution operator Function, Function Proto Types, Types of Functions, Default Arguments
  • Arrays, one dimensional array, two-dimensional array pointer variable, void, Null pointer , this pointer. Enumerations, Reference variables. call by value, call by reference, Recursion Function.
  • Function Overloading, unary operator, binary operator overloading. Constructors, default, parameterized, Constructor with default arguments, Copy constructor, Destructors,
  • Inline Functions, static member functions, Scope rules. Object-Oriented Programming, procedural v/s object- oriented programming, Encapsulation, classes, Objects, Data Member and Member Function. access specifiers, Static data members and Static member Function, Objects as Function Argument, Friend Function, Accessing class members.
  • string class-defining, assigning string objects, Modifiers of string class. Basic concept of Inheritance, derived and base class, Types of inheritance, inheritance using private, protected, public, Overriding member functions, Order of execution of constructors and destructors, Virtual function and Virtual base class, Pure virtual functions. Polymorphism, types of polymorphism, static and dynamic polymorphism, Abstract classes, Self-Referential class.
  • File stream functions, Modes of file, Reading / Writing of files, Sequential access and random-access file processing Why exception, Exception handling mechanism, Throwing mechanism, Catching mechanism Templates, Function template and class template

Dr. Om Prakash Yadav
Associate Professor

Dr. Om Prakash Yadav is an Associate Professor in the School of Computer Science and Engineering at Lovely Professional University, with over 20 years of teaching experience and more than 5 years of research expertise in Computer Science and Engineering. He holds a Ph.D. in CSE with specialization in Machine Learning and IoT. He has extensive experience in delivering industry-oriented and outcome-based education in areas such as Web Development (HTML, CSS, JavaScript), Data Structures, Java, Python, Computer Networks, and IoT. He focuses on enabling students to build responsive, interactive, and real-world web applications through hands-on learning, project-based approaches, and exposure to modern development practices. Dr. Yadav has a strong research background with 13 Scopus-indexed publications and 23 UGC-listed papers, along with several book chapters and conference contributions. He is known for his effective communication, structured teaching methodology, and ability to integrate academic concepts with industry requirements. His teaching approach emphasizes practical skills, innovation, and career readiness, preparing students to meet the demands of the modern technology landscape.