Skip to content

A collection of C++ projects exploring many aspects of object-oriented programming.

Notifications You must be signed in to change notification settings

Fousse24/42_CPP

Repository files navigation

42_CPP

This is a collection of C++ projects exploring many aspects of object-oriented programming.
What is learned is each module is normally re-used in the ones after, and the last exercise is often a summation of what came before.

For a more advanced project about creating containers in C++, you can go to my other repository.

Notable exercises

  • Claptrap (Inheritance and Diamond problem)
  • AMateria (Object Factory, Interfaces/Abstract classes)
  • Intern (Exceptions and everything else)

  • Introduction and transition from C to C++ (aka using less C functions and more C++ functions when possible)

  • Memory allocation
  • Reference and pointers to members
  • Usage of the switch in CPP

  • Ad-hoc polymorphism
  • Overloads
  • Orthodox canonical classes


  • Subtype polymorphism (virtual functions and such)
  • Abstract classes / interfaces

  • Try/Catch
  • Creating custom exceptions

  • static_cast
  • reinterpret_cast
  • dynamic_cast

  • Templates
    • Functions
    • Mock iterator
    • Custom class template Array

  • Templates
    • Function taking a templated container
    • Create a templated Span container with some functions
    • Create a templated MutantStack which inherit std::stack

Final C++ project : ft_containers

In depth exploration of templates and std::containers.

About

A collection of C++ projects exploring many aspects of object-oriented programming.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published