Skip to content

raveriss/cpp01

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Projet CPP01 - École 42

Introduction

Le module CPP01 approfondit la connaissance de C++ introduite dans CPP00, en se concentrant sur des concepts avancés tels que l'allocation de mémoire, les pointeurs sur membres, les références, et l'instruction switch. Ce module est conçu pour renforcer la maîtrise de la programmation orientée objet (POO) en utilisant le standard C++98.

Structure du Projet

Chaque exercice est contenu dans son propre dossier et comprend des fichiers spécifiques essentiels à la réalisation de l'exercice. Voici une vue d'ensemble des composants de chaque exercice :

Exercice 00: BraiiiiiiinnnzzzZ

  • Dossier : ex00/
  • Fichiers :
    • Makefile
    • main.cpp
    • Zombie.h, Zombie.hpp
    • Zombie.cpp
    • newZombie.cpp
    • randomChump.cpp

Fonctionnalité

Implémentation d'une classe Zombie qui peut annoncer son nom suivant le format <nom>: BraiiiiiiinnnzzzZ.... L'exercice permet de pratiquer l'allocation dynamique et la gestion de la mémoire.

Exercice 01: Encore plus de cerveaux !

  • Dossier : ex01/
  • Fichiers :
    • Makefile
    • main.cpp
    • Zombie.h, Zombie.hpp
    • Zombie.cpp
    • zombieHorde.cpp

Fonctionnalité

Création d'une horde de zombies. Cet exercice met l'accent sur l'allocation de blocs de mémoire et sur la gestion correcte des objets en mémoire.

Exercice 02: BONJOUR ICI LE CERVEAU

  • Dossier : ex02/
  • Fichiers :
    • Makefile
    • main.cpp

Fonctionnalité

Manipulation de strings via des pointeurs et des références pour démontrer les concepts de base des références en C++.

Exercice 03: Violence inutile

  • Dossier : ex03/
  • Fichiers :
    • Makefile
    • main.cpp
    • Weapon.h, Weapon.hpp, Weapon.cpp
    • HumanA.h, HumanA.hpp, HumanA.cpp
    • HumanB.h, HumanB.hpp, HumanB.cpp

Fonctionnalité

Implémentation de deux classes simulant des combattants équipés d'armes, mettant en lumière l'utilisation des références et des pointeurs pour la gestion d'attributs d'objets.

Exercice 04: Sed, c’est pour les perdant(e)s

  • Dossier : ex04/
  • Fichiers :
    • Makefile
    • main.cpp

Fonctionnalité

Écriture d'un programme de substitution de texte dans un fichier, simulant l'utilitaire sed. L'exercice met l'accent sur la manipulation de fichiers sans utiliser la fonction replace de la bibliothèque standard.

Exercice 05: Harl 2.0

  • Dossier : ex05/
  • Fichiers :
    • Makefile
    • main.cpp
    • Harl.h, Harl.hpp, Harl.cpp

Fonctionnalité

Création d'une classe Harl qui utilise des pointeurs sur fonctions membres pour gérer divers niveaux de plaintes.

Exercice 06: Harl filter

  • Dossier : ex06/
  • Fichiers :
    • Makefile
    • main.cpp
    • Harl.h, Harl.hpp, Harl.cpp

Fonctionnalité

Extension de l'exercice précédent où les plaintes de Harl sont filtrées selon un niveau de gravité spécifié en entrée.

Compilation et Exécution

Pour compiler un exercice, naviguez dans le dossier correspondant et utilisez make. Pour exécuter, suivez les commandes listées dans chaque dossier, typiquement ./nom_executable.

Ressources

Ce projet s'appuie sur des concepts avancés en C++ décrits dans diverses documentations et livres de référence en C++.

Auteurs et Contribution

Ce projet a été réalisé par Rafael, étudiant à l'École 42. Les contributions sont encouragées et doivent adhérer aux conventions de codage du module.

Licence

Ce projet est sous licence ouverte, permettant son utilisation et sa distribution dans un cadre éducatif ou professionnel sous réserve de citation appropriée.

About

C++98 exercises covering OOP, classes and memory

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published