A collection of C++ module exercises and small projects demonstrating core C++ concepts, idiomatic usage, and common patterns. This repository is organized into separate exercises/modules. Each module contains its own source files, headers, and a Makefile (or a common top-level Makefile) to build the exercise.
This repo is intended for learning, practicing, and demonstrating C++ fundamentals such as:
- Classes, constructors/destructors, copy/move semantics
- Operator overloading
- Inheritance and polymorphism
- Resource management (RAII)
- Templates and generic programming
- Standard Library usage (std::vector, std::string, streams, etc.)
- A C++ compiler supporting C++89/11/14/17 (g++, clang++)
- make
- (Optional) valgrind for memory checks
- (Optional) clang-format for style formatting