Skip to content

Latest commit

 

History

139 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C++ Modules 00–09

A collection of C++ projects completed as part of the 42 curriculum.

The modules introduce object-oriented programming and gradually progress toward templates, STL containers, algorithms, and advanced data-processing problems.

Modules

Module Main Topics
CPP00 Namespaces, classes, member functions, initialization lists
CPP01 Memory allocation, pointers, references, file streams
CPP02 Orthodox Canonical Form, operator overloading, fixed-point numbers
CPP03 Inheritance and class hierarchies
CPP04 Polymorphism, abstract classes, interfaces, deep copying
CPP05 Exceptions, forms, and bureaucratic workflows
CPP06 C++ type casting and serialization
CPP07 Function and class templates
CPP08 STL containers, iterators, and algorithms
CPP09 Bitcoin Exchange, Reverse Polish Notation, and merge-insertion sort (Ford-Johnson Algorithm)

Repository Structure

cpp-learningpath/
├── CPP00/
├── CPP01/
├── CPP02/
├── CPP03/
├── CPP04/
├── CPP05/
├── CPP06/
├── CPP07/
├── CPP08/
└── CPP09/

Each module contains multiple exercises with its own source files and Makefile.

Compilation

Navigate to an exercise directory:

cd CPP00/ex00
make

Run the generated executable:

./program_name

The executable name depends on the exercise.

Makefile Commands

Command Description
make Compile the exercise
make clean Remove object files
make fclean Remove object files and executable
make re Recompile the exercise

Key Concepts

  • Object-oriented programming
  • Encapsulation and abstraction
  • Inheritance and polymorphism
  • Memory management
  • Operator overloading
  • Exception handling
  • Type casting
  • Templates
  • STL containers and iterators
  • Sorting and data-processing algorithms

About

A collection of C++ modules covering object-oriented programming, templates, STL containers, exceptions, and algorithms.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages