C++ Programming

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

Note: Still most of the article are pending, some of them were completed which are linked below . I hope you will understand and comeback after, I’ll try my best to complete them ASAP. Sorry for inconvenience.

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

  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
  10. Conditional statements
  11. Loops
  12. Storage Classes
  13. Preprocessors directives
  14. Switch statement
  15. Control Statements in C/C++
  16. Tokens in C++

Input and output

  1. Basic Input/Output
  2. endl vs \n

Operators

  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

Arrays

  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+
  6. Tokenizing a string
  7. Print size of array parameter

Functions

  1. Functions
  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
  9. Const member functions

Pointers and References

  1. Pointers
  2. Array Decay
  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
  2. malloc() vs new
  3. delete() and free()

Object Oriented Programming (OOPs)

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

Inheritance

  1. Inheritance intro
  2. Runtime Polymorphism
  3. Multiple Inheritance
  4. Object Slicing in
  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

Overloading

  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
  19. Multimap