C++ Programming Language

C++ Recent Articles!
Practice Track on C++
C++ Output & Multiple Choice Questions

Basics, C vs C++, C++ vs Java, Input and Output, Operators, Arrays and Strings, Functions, References and Pointers, Dynamic memory allocation, Object Oriented Programming(OOP),Constructor and Destructor, Function Overloading, Operator Overloading, Virtual Functions, Exception Handling, Namespaces, Standard Template Library (STL), Inheritance, C++ Library, C++ Advanced, C++ in Competitive Programming, Puzzles, Interview Questions, Multiple Choice Questions


C vs C++

C++ vs Java

Input and output


Arrays and Strings


Pointers and References

Dynamic memory allocation

Object Oriented Programming(OOP)

Constructor and Destructor

Function Overloading

Operator Overloading

Virtual Functions

Exception Handling


Standard Template Library (STL)


  1. Introduction to STL
  2. Sorting
  3. Searching


  1. Pair (Practice)
  2. Vector (Practice)
  3. List
  4. Dequeue
  5. Deque::empty() and deque::size() in C++ STL
  6. Deque::pop_front() and deque::pop_back() in C++ STL
  7. Deque::clear() and deque::erase() in C++ STL
  8. Queue (Practice)
  9. Forward_list::front() and forward_list::empty() in C++ STL
  10. Queue::front() and queue::back() in C++ STL
  11. Forward_list :: remove() and forward_list :: remove_if() in C++ STL
  12. Queue::push() and queue::pop() in C++ STL
  13. queue::empty() and queue::size() in C++ STL
  14. Priority Queue
  15. Stack (Practice)
  16. Stack::push() and stack::pop() in C++ STL
  17. Forward_list :: push_front() and forward_list :: pop_front() in C++ STL
  18. Stack::top() in C++ STL
  19. Stack::empty() and stack::size() in C++ STL
  20. Set (Practice)
  21. Std::next_permutation and prev_permutation in C++
  22. Std::stoul and std::stoull in C++
  23. Shuffle vs random_shuffle in C++
  24. Difference between set, multiset, unordered_set, unordered_multiset
  25. Check if a key is present in a C++ map or unordered_map
  26. Std::stable_partition in C++
  27. Valarray slice selector
  28. Std::memchr in C++
  29. Std::strncmp() in C++
  30. Stable_sort() in C++ STL
  31. Std::memcmp() in C++
  32. Std::memset in C++
  33. Std::bucket_count and std::bucket_size in unordered_map in C++
  34. Map of pairs in STL
  35. Range-based for loop in C++
  36. Std::includes() in C++ STL
  37. Std::set_symmetric_difference in C++
  38. Std::sort_heap in C++
  39. Map vs unordered_map in C++
  40. Round() in C++
  41. Modulus of two float or double numbers
  42. Multiset
  43. Map (Practice)
  44. Multimap
  45. Heap using STL C++


  1. sort() in C++ STL
  2. Strand sort
  3. Type Inference in C++ (auto and decltype)
  4. transform() in C++ STL
  5. Variadic function templates in C++
  6. Template Specialization
  7. Implementing iterator pattern of a singly linked list
  8. Binary Search functions in C++ STL
  9. Descending order in Map and Multimap of C++ STL
  10. Insertion and Deletion in STL Set C++


C++ Library

  1. <random> file – generators and distributions
  2. Array type manipulation
  3. C++ programming and STL facts
  4. Sqrt, sqrtl and sqrtf in C++
  5. std::stod, std::stof, std::stold in C++
  6. C program to demonstrate fork() and pipe()
  7. Complex numbers in C++ | Set 1 Set 2
  8. Inbuilt library functions for user Input
  9. Rename function in C/C++
  10. Chrono
  11. valarray class
  12. Floating Point Manipulation (fmod(), remainder(), remquo() … in cmath)(Practice)
  13. Character Classification: cctype
  14. Snprintf() in C library
  15. Boost::split in C++ library
  16. Modulus of two float or double numbers
  17. Is_trivial function in C++
  18. Array sum in C++ STL
  19. Div() function in C++
  20. Exit() vs _Exit() in C and C++
  21. Std::none_of in C++
  22. Isprint() in C++
  23. Iscntrl() in C++ and its application to find control characters
  24. Std::partition_point in C++
  25. Iterator Invalidation in C++
  26. Fesetround() and fegetround() in C++ and their application
  27. Rint(), rintf(), rintl() in C++
  28. Hypot(), hypotf(), hypotl() in C++
  29. Std::gslice | Valarray generalized slice selector
  30. std::setbase, std::setw , std::setfill in C++
  31. Strxfrm() in C/C++
  32. Set position with seekg() in C++ language file handling
  33. Strstr() in C/C++
  34. Difftime() C library function
  35. Socket Programming
  36. Precision of floating point numbers in C++ (floor(), ceil(), trunc(), round() and setprecision())
  37. <bit/stdc++.h> header file
  38. std::string class in C++
  39. Merge operations using STL in C++ (merge, includes, set_union, set_intersection, set_difference, ..)
  40. std::partition in C++ STL
  41. Ratio Manipulations in C++ | Set 1 (Arithmetic) , Set 2 (Comparison)
  42. numeric header in C++ STL | Set 1 (accumulate() and partial_sum()), Set 2 (adjacent_difference(), inner_product() and iota())
  43. Bind function and placeholders
  44. Array class
  45. Tuples
  46. Regex (Regular Expression)
  47. Common Subtleties in Vector STLs
  48. Understanding constexpr specifier
  49. unordered_multiset and its uses
  50. unordered_multimap and its application
  51. Populating a vector in C++ using fill() and fill_n()
  52. Writing OS Independent Code in C/C++
  53. C Program to display hostname and IP address
  54. Database Connectivity using C/C++
  55. C++ bitset and its application
  56. unordered_map in STL and its applications
  57. unorderd_set in STL and its applications
  58. nextafter() and nexttoward()

C++ Advanced

C++ in Competitive Programming


Interview Questions

Quick Links:

  • Recent Articles on C++
  • Practice Track on C++
  • C++ Output & Multiple Choice Questions

  • My Personal Notes arrow_drop_up