C++ Programming

C++ is a general-purpose, multi-paradigm programming language supports procedural, functional, object-oriented, generic ways of writing code.

C++ Topics

  1. Basic fundamentals of C++ Programming
  2. Input and output
  3. Operators
  4. Arrays
  5. Functions
  6. Pointers and References
  7. File Handling
  8. Dynamic memory allocation
  1. Object Oriented Programming(OOP)
  2. Inheritance
  3. Constructor and Destructor
  4. Overloading
  5. Operator Overloading
  6. Virtual Functions
  7. Exception Handling
  8. C++ Standard Template Library (STL)

Details of each topic

Basics of C++

  1. C++ Programming Language Introduction
  2. Installing MinGW Compiler
  3. Installing Codeblocks
  4. Structure of C++ program
  5. void main() or main() or int main()
  6. Keywords in C++
  7. Data Types
  8. Input/Output
  9. Operators in C++
  10. Conditional statements in C++
  11. Loops
  12. Storage Classes in C++
  13. Preprocessors directives
  14. Switch statement in C++

Input and output

  1. Basic Input/Output
  2. endl vs \n in C++

Operators in C++

  1. Operators
  2. Unary operators in C/C++
  3. Conditionally assign a value without using conditional and arithmetic operators
  4. Set a variable without using Arithmetic, Relational or Conditional Operator
  5. Scope Resolution Operator
  6. Pre-increment or pre-decrement
  7. new and delete operator in C++


  1. Arrays in C/C++
  2. Array of Strings
  3. Multidimensional arrays in C/C++
  4. Find size of array in C/C++ without using sizeof
  5. reverse a string in C++
  6. Tokenizing a string in C++
  7. Print size of array parameter


  1. Functions in C++
  2. Default Arguments
  3. Argument and return values
  4. Inline Functions
  5. Return from void functions
  6. Returning multiple values from a function
  7. Functors
  8. Ciel and floor functions in C++
  9. Const member functions

Pointers and References

  1. Pointers in C and C++
  2. Array Decay in C
  3. Opaque Pointer
  4. References
  5. Can references refer to invalid location?
  6. Pass arguments by reference or pointer
  7. ‘this’ pointer
  8. “delete this”
  9. Dangling, Void , Null and Wild Pointers
  10. Passing by pointer Vs Passing by Reference
  11. Smart Pointers
  12. NaN in C++
  13. Pointers vs References in C++

File Handling

  1. Opening, closing, writing and reading a file
  2. Special operations in a File
  3. File Position Pointers

Dynamic memory allocation

  1. new and delete operator in C++
  2. malloc() vs new
  3. delete() and free()

Object Oriented Programming (OOPs)

  1. Introduction to OOP in C++
  2. Classes and Objects
  3. Access Modifiers
  4. Inheritance
  5. Polymorphism
  6. Encapsulation
  7. Data Abstraction
  8. Structure vs class
  9. Static data members in C++
  10. Friend class and function
  11. Local Class
  12. Nested Classes


  1. Inheritance intro
  2. Runtime Polymorphism in C++
  3. Multiple Inheritance in C++
  4. Object Slicing in C++
  5. Inheritance and friendship
  6. Simulating final class

Constructor and Destructor

  1. Constructors
  2. Copy Constructor
  3. Destructors
  4. When is copy constructor called?
  5. Initialization of data members
  6. explicit keyword
  7. Initializer List
  8. Default Constructors
  9. Private Destructor
  10. Copy elision
  11. Virtual Constructor
  12. Virtual Copy Constructor
  13. calling constructor and destructor explicitly


  1. Function Overloading
  2. Functions that can’t be overloaded
  3. Overloading with Inheritance
  4. Can main() be overloaded
  5. Function Overloading and float
  6. Operator Overloading
  7. Copy constructor
  8. Assignment operator
  9. Operators that cannot be overloadedConversion Operators
  10. Default Assignment Operator and References
  11. Overloading stream insertion (<<) and extraction (>>) operators

Virtual Functions

  1. Virtual Functions
  2. Runtime Polymorphism
  3. Default arguments and virtual function
  4. Virtual functions in derived classes
  5. Can static functions be virtual?
  6. Virtual Destructor
  7. Virtual Constructor
  8. Virtual Copy Constructor
  9. Run-time type information
  10. Private virtual functions
  11. Inline virtual function
  12. Pure Virtual Functions and Abstract Classes
  13. Pure virtual destructor

Exception Handling

  1. Exception Handling Basics
  2. Catching base and derived classes as exceptions
  3. Catch block and type conversion
  4. Exception handling and object destruction

C++ Standard Template Library (STL)

  1. Introduction to STL
  2. Sorting
  3. Searching
  4. Pair
  5. Vector
  6. List
  7. Forward List
  8. Queue
  9. Dequeue
  10. Priority Queue
  11. Stack
  12. Set
  13. Multiset
  14. unordered_set
  15. unordered_multiset
  16. map
  17. unordered_map
  18. Heap using STL C++
  19. Multimap
3 Comment threads
7 Thread replies
Most reacted comment
Hottest comment thread
5 Comment authors
SaipoulabubluAdminVenkat Recent comment authors
Notify of

Enable link for other topics


hello sir,my name is poula and i am student studying computer science major, i would like to thank you about great effort on youtube but i have some questions about c++ tutorial , do i post it here?


I really appreciate your hard work. It really helped me learn a lott about C++. Just a simple question, I still couldn’t understand while passing an accepting an object in the friend function why did you use & operator, can I use the object name without adding & in front of its name? like friend void stinkysfriend(stankFist sfo) ?will this be correct. And thankss so much for posting the video on youtube it reaallly helped me alot.