C++
Pointers and memory, RAII, templates, the STL, and modern C++.
0/14 complete
- Getting Started with C++Compile your first program, and meet the value semantics, references, and pointers that define C++.intro
- Memory Management & RAIIResource Acquisition Is Initialization — tie memory and resources to object lifetime for safe, leak-free code.medium
- Templates & Generic ProgrammingWrite code once for any type — the power behind the STL and modern C++ metaprogramming.medium
- The STLC++'s Standard Template Library — ready-made containers and algorithms with known complexity.medium
- Classes & ObjectsBundle data with behavior — constructors, destructors, and encapsulation define an object's whole lifecycle.medium
- Inheritance & PolymorphismShare behavior through base classes and let virtual functions pick the right override at run time.medium
- Smart PointersLet ownership manage memory — unique_ptr, shared_ptr, and weak_ptr free resources automatically with RAII.medium
- Move SemanticsSteal resources instead of copying them — lvalues, rvalues, and why moves make modern C++ fast.hard
- Exceptions & Stack UnwindingSignal errors with throw/try/catch, and rely on RAII so resources still clean up as the stack unwinds.medium
- I/O & StringsRead and write with iostream, parse text with stringstream, and slice std::string — including the small-string optimization.easy
- Operator OverloadingGive your own types natural syntax — define operator+, ==, <<, and [] as member or free functions, and know when not to.medium
- Lambdas & Functional StyleWrite inline callables, capture state by value or reference, store them in std::function, and feed them to STL algorithms.medium
- ConcurrencyRun code on threads, avoid data races with mutexes and atomics, and get results back with std::async and futures.hard
- Modern C++ FeaturesWrite cleaner, safer code with auto, range-based for, structured bindings, constexpr, and std::optional / std::variant.medium