Skip to content

This repository provides structured documentation and practical C++ examples covering fundamentals, modern C++ features, object-oriented programming, and essential data structures. It serves as a clear reference for learners, interview candidates, and developers looking to strengthen their C++ skills with clean, illustrative implementations.

License

Notifications You must be signed in to change notification settings

abhinav1602/CPP

Repository files navigation

🚀 C++ Comprehensive Learning Repository

C++ License Status

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


Overview

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).

Features

  • 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

Modules

# 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.


Quick Start

# 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
./VectorExample

Each example file includes compilation instructions in comments.


Repository Structure

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

Learning Path

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.


Documentation


Prerequisites

  • Compiler: g++ 7+, clang++ 5+, or MSVC 19.14+
  • Standard: C++17 minimum, C++20 recommended for some examples
  • OS: Linux, macOS, or Windows

Contributing

Contributions welcome! See CONTRIBUTING.md for guidelines. Please maintain the existing structure and coding standards.


License

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


Contact

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.

About

This repository provides structured documentation and practical C++ examples covering fundamentals, modern C++ features, object-oriented programming, and essential data structures. It serves as a clear reference for learners, interview candidates, and developers looking to strengthen their C++ skills with clean, illustrative implementations.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages