← Back to Tools
C++

Tool

C++

C's power with object-oriented tools layered on top

Learn modern C++ from syntax and strings to classes, polymorphism, and the STL — compiling and running real C++17 in every chapter.

14

Chapters

36

Hours (estimated)

1

Self-paced

Part-time

About 12 weeks

1 hour a day, 3 days a week

Full-time

About 4 weeks

3 hours a day, 3 days a week

Estimated from 14 chapters (notes, practice, labs, quiz, exercise, and challenge) plus the final exam. Go at your own pace.

Curriculum

14 chapters, each with a tutorial, a live example, a quiz, an exercise, a challenge, and class practice.

  1. 1

    Introduction to C++

    What C++ is and where it's used, the structure of a program, printing with cout, reading with cin, namespaces, and comments.

  2. 2

    Variables, Data Types & Constants

    Declaring variables, the fundamental types, std::string, auto, const and constexpr, type conversion, and formatting numbers.

  3. 3

    Operators & Booleans

    Arithmetic, assignment, comparison, and logical operators; the bool type and boolalpha; short-circuiting; and precedence.

  4. 4

    Strings

    std::string basics, concatenation, length and indexing, substr and find, changing case, getline, and string streams.

  5. 5

    Math & User Input

    The cmath library, reading several values with cin, checking for bad input, and recovering with clear and ignore.

  6. 6

    Conditions: if, else & switch

    Branching with if / else if / else, the ternary operator, switch with break and default, and if-with-initializer.

  7. 7

    Loops

    while, do-while, for, and range-based for loops; break and continue; nested loops; and avoiding common loop bugs.

  8. 8

    Arrays & Vectors

    Built-in arrays and std::array, std::vector and its operations, iterating, sorting with std::sort, and 2D data.

  9. 9

    References & Pointers

    References as aliases, pass-by-reference, memory addresses and pointers, nullptr, dynamic memory, and smart pointers.

  10. 10

    Functions

    Declaring and defining functions, parameters and return values, default arguments, overloading, recursion, and lambdas.

  11. 11

    Classes & Objects

    Defining classes, public and private members, constructors and initializer lists, methods, const methods, and encapsulation.

  12. 12

    Inheritance & Polymorphism

    Base and derived classes, protected members, virtual functions and override, abstract classes, and polymorphism through base pointers.

  13. 13

    Files & Exceptions

    Reading and writing files with fstream, checking that files opened, throwing and catching exceptions, and standard exception types.

  14. 14

    STL: Maps, Sets & Algorithms

    The Standard Template Library's containers (map, unordered_map, set), iterators, and algorithms such as sort, count_if, accumulate, and transform.

Start learning — it's free →

C++ is free to study, self-paced. Pass the final exam to earn an optional Certificate of Completion for $40.