Intro to C++

Learn one of the most powerful languages with both high level abstraction and low level control over hardware

None

Prerequisites

Beginner-Intermediate

Skill Level

10

Number of Lessons

Course Content:

Lesson 1: Basic Input and Output

  • Using std::cin and std::cout  for console input and output.
  • Formatting output with escape sequences and manipulators.
  • Handling basic data types (int, float, double, char) with input and output.
  • Using the fstream library for efficient file input and output.

Lesson 2: Variables, Data Types, and Operators

  • Declaring and initializing variables in C++.
  • Understanding C++ data types (int, float, double, char, bool).
  • Arithmetic operators (+, -, *, /, %) and their usage.
  • Relational operators (>, <, >=, <=, ==, !=) for comparisons.

Lesson 3: Control Flow and Decision Making

  • Using if-else statements for conditional execution.
  • The switch statement for multi-branch decisions.
  • Logical operators (&&, ||, !) for combining conditions.
  • Nested if-else and switch statements.

Lesson 4: Loops and Iteration

  • The while loop and its implementation.
  • The for loop and its advantages in certain situations.
  • The do-while loop and when it is appropriate.
  • Controlling loops with break and continue statements.

Lesson 5: Arrays and Strings

  • Introduction to arrays and their declaration.
  • Accessing array elements and modifying values.
  • Working with strings (C-style strings and string class).
  • Common string manipulation functions.
Lesson 6: C++ Data Structures:
  • Dynamic arrays (std::vectors)
  • Pairs and Tuples
  • Stacks, Queues, Deques
  • Priority Queues
  • Sets, Multisets
  • Ordered and Unordered Maps

Lesson 7: Functions and Modular Programming

  • Understanding functions and their importance in programming.
  • Declaring and defining functions in C++.
  • Passing arguments to functions (by value and by reference).
  • Function overloading and its benefits.

Lesson 8: Object-Oriented Programming (OOP) – Part 1

  • Basics of Object-Oriented Programming (encapsulation, inheritance, polymorphism).
  • Creating classes and objects in C++.
  • Constructors and destructors in classes.
  • Access specifiers (public, private, protected).

Lesson 9: Object-Oriented Programming (OOP) – Part 2

  • Understanding inheritance and its implementation.
  • Using base and derived classes.
  • Overriding base class methods.
  • Introduction to virtual functions and dynamic polymorphism.

Lesson 10: Low Level Control

  • Understanding how memory works
  • Pointers and References
  • Traversing through data structures with iterators