A comprehensive learning resource covering essential C++ topics with 95+ runnable examples and clear documentation.
Author: Abhinav
Repository: github.com/abhinav1602/CPP
License: CC BY-NC-SA 4.0
This repository provides structured C++ learning materials from fundamentals to advanced concepts. Each module contains practical examples with modern C++ practices (C++11/14/17/20).
- 95+ Examples - Runnable code demonstrating each concept
- 10 Modules - STL, Memory, OOP, Templates, Modern C++, Concurrency, and more
- Modern Standards - C++17/20 features included
- Clean Structure - Focused documentation without redundancy
- Cross-Platform - Works on Linux, macOS, Windows
| # | Module | Key Topics |
|---|---|---|
| 01 | STL Containers | vector, map, set, unordered containers |
| 02 | STL Algorithms | find, sort, transform, accumulate |
| 03 | Memory Management | pointers, smart pointers, RAII |
| 04 | OOP | classes, inheritance, polymorphism |
| 05 | Templates | generic programming, concepts |
| 06 | Modern C++ | lambdas, move semantics, ranges |
| 07 | Multithreading | threads, mutex, atomics, async |
| 08 | File I/O | streams, file operations |
| 09 | Exception Handling | try-catch, safety guarantees |
| 10 | Data Structures | custom implementations |
See INDEX.md for detailed navigation.
# Clone repository
git clone https://github.com/abhinav1602/CPP.git
cd CPP
# Navigate to a module
cd 01_STL_Containers/01_SequenceContainers
# Compile and run an example
g++ -std=c++17 -Wall -Wextra -O2 VectorExample.cpp -o VectorExample
./VectorExampleEach example file includes compilation instructions in comments.
CPP/
├── README.md # This file
├── PROJECT_SUMMARY.md # Statistics & overview
├── QUICK_REFERENCE.md # Syntax cheat sheet
├── INDEX.md # Module navigation
├── STRUCTURE.md # Organization details
├── CONTRIBUTING.md # Contribution guidelines
├── LICENSE # Legal terms
│
└── 01-10_Modules/ # Each contains:
├── README.md # - Module guide
├── QUICK_REFERENCE.md # - Syntax reference
└── XX_Topics/ # - Example files
Beginner → Start with Modules 01, 02, 08
Intermediate → Continue with Modules 03, 04, 05
Advanced → Explore Modules 06, 07, 09, 10
Each module README provides detailed learning objectives and progression.
- PROJECT_SUMMARY.md - Complete statistics and metrics
- QUICK_REFERENCE.md - Global C++ syntax reference
- INDEX.md - Detailed module navigation
- STRUCTURE.md - Repository organization
- CONTRIBUTING.md - How to contribute
- Compiler: g++ 7+, clang++ 5+, or MSVC 19.14+
- Standard: C++17 minimum, C++20 recommended for some examples
- OS: Linux, macOS, or Windows
Contributions welcome! See CONTRIBUTING.md for guidelines. Please maintain the existing structure and coding standards.
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International
Key Terms:
- ✅ Share and adapt for non-commercial purposes
- ✅ Attribute to author
- ✅ Share adaptations under same license
- ❌ Commercial use requires permission
Full license: LICENSE
Author: Abhinav
GitHub: @abhinav1602
Repository: github.com/abhinav1602/CPP
For questions or suggestions, open an issue on GitHub.
A focused resource for learning modern C++ - from fundamentals to advanced techniques.