This repository contains the 42 C++ module track, a progression of focused exercises that move from basic syntax into object-oriented design, inheritance, polymorphism, templates, exceptions, casts, STL containers, and algorithmic thinking.
The value of the project is in the repetition: each small program isolates one concept and builds confidence with C++ without relying on a framework.
- C++ class design and encapsulation
- Constructors, destructors, copy constructors, and assignment operators
- The Canonical Orthodox Form
- Operator overloads
- Fixed-point arithmetic
- Inheritance and polymorphism
- Abstract classes and interfaces
- Exceptions and error handling
- C++ casts
- Templates and generic programming
- STL containers and algorithms
cpp00/ ... cpp09/ Module exercises
examr5/ Exam practice
examr52/ Additional exam practice
Each exercise usually contains its own:
Makefile
*.hpp
*.cpp
main.cpp
Enter an exercise directory:
cd cpp04/ex03
make
./gameThe executable name depends on the exercise Makefile.
make
make clean
make fclean
make re- Keeps each concept isolated in a small, reviewable program
- Uses strict compiler flags across exercises
- Practices memory ownership and object lifetime repeatedly
- Builds from simple command-line programs into larger class hierarchies
- C++ fundamentals
- Object-oriented programming
- Debugging compiler and linker issues
- Reading and implementing precise project specifications
- Building disciplined habits across many small codebases
These modules are educational by design. Together, they show the progression from C-style thinking into idiomatic C++ structure and abstraction.