From 1d61c7b67c041a2c0701529ec0dfdae60f810c2b Mon Sep 17 00:00:00 2001 From: "antoine.perederii" Date: Fri, 10 Feb 2023 12:05:47 +0100 Subject: [PATCH] modif du tp3 de Cpp --- Algo/tp/Cpp/3_tp/obj/passager.o | Bin 0 -> 4320 bytes Algo/tp/Cpp/3_tp/obj/test.o | Bin 0 -> 13480 bytes Algo/tp/Cpp/3_tp/obj/train.o | Bin 0 -> 61160 bytes Algo/tp/Cpp/3_tp/src/passager.cpp | 6 +++++- Algo/tp/Cpp/3_tp/src/passager.hpp | 4 +++- Algo/tp/Cpp/3_tp/src/test.cpp | 16 ++++++++-------- Algo/tp/Cpp/3_tp/src/wagon.cpp | 30 +++++++++++++++++------------- Algo/tp/Cpp/3_tp/src/wagon.hpp | 11 ++++++----- 8 files changed, 39 insertions(+), 28 deletions(-) create mode 100644 Algo/tp/Cpp/3_tp/obj/passager.o create mode 100644 Algo/tp/Cpp/3_tp/obj/test.o create mode 100644 Algo/tp/Cpp/3_tp/obj/train.o diff --git a/Algo/tp/Cpp/3_tp/obj/passager.o b/Algo/tp/Cpp/3_tp/obj/passager.o new file mode 100644 index 0000000000000000000000000000000000000000..9e8ada860c6e489ff56372671578b853fa7e1641 GIT binary patch literal 4320 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 literal 0 HcmV?d00001 diff --git a/Algo/tp/Cpp/3_tp/src/passager.cpp b/Algo/tp/Cpp/3_tp/src/passager.cpp index c4582f0..54d9298 100644 --- a/Algo/tp/Cpp/3_tp/src/passager.cpp +++ b/Algo/tp/Cpp/3_tp/src/passager.cpp @@ -1,4 +1,5 @@ #include "passager.hpp" +#include "wagon.hpp" #include #include @@ -12,5 +13,8 @@ Wagon Passager::getWagonActuel() const { return *wagonActuel; } - +ostream &operator<<(ostream &s, const Passager &p) { + s << "Passager : " << p.nom << p.prenom << endl; + return s; +} diff --git a/Algo/tp/Cpp/3_tp/src/passager.hpp b/Algo/tp/Cpp/3_tp/src/passager.hpp index 1df41e5..1293cce 100644 --- a/Algo/tp/Cpp/3_tp/src/passager.hpp +++ b/Algo/tp/Cpp/3_tp/src/passager.hpp @@ -2,7 +2,8 @@ #define PASSAGER_HPP #include -#include "wagon.hpp" + +class Wagon; class Passager { private : @@ -20,6 +21,7 @@ public : friend std::ostream &operator<<(std::ostream &s, const Passager &p); + ~Passager(); }; diff --git a/Algo/tp/Cpp/3_tp/src/test.cpp b/Algo/tp/Cpp/3_tp/src/test.cpp index 541572e..1c3ce73 100644 --- a/Algo/tp/Cpp/3_tp/src/test.cpp +++ b/Algo/tp/Cpp/3_tp/src/test.cpp @@ -8,19 +8,19 @@ using namespace std; void testPassager(void) { - Passager lePassager("Passager 1", "Prenom 1"); - cout << lePassager.getNom() << endl; + Passager lePassager("Nom", "Prenom"); + cout << lePassager << endl; } void testWagon(void) { - Wagon leWagon("Wagon 1"); - cout << leWagon.getNom() << endl; + Wagon leWagon(1); + cout << leWagon << endl; } -void testTrain(void) { - Train leTrain("Train 1"); - cout << leTrain.getNom() << endl; -} +// void testTrain(void) { +// Train leTrain("Train 1"); +// cout << leTrain.getNom() << endl; +// } int main() { testPassager(); diff --git a/Algo/tp/Cpp/3_tp/src/wagon.cpp b/Algo/tp/Cpp/3_tp/src/wagon.cpp index a6c853b..84defeb 100644 --- a/Algo/tp/Cpp/3_tp/src/wagon.cpp +++ b/Algo/tp/Cpp/3_tp/src/wagon.cpp @@ -1,29 +1,33 @@ #include "wagon.hpp" +#include "passager.hpp" #include #include +using namespace std; + Wagon::Wagon(int numero) :numero{numero} {} -int Wagon::ajouter(Passager lePassager) { - if(lesPassagers->size() == capacite) { +int Wagon::ajouter(Passager& lePassager) { + if(lesPassagers.size() == capacite) { return -1; } - lesPassagers->push_back(lePassager); + lesPassagers.push_back(&lePassager); return 0; } -int Wagon::enlever(Passager lePassager) { - if(lesPassagers->size() == 0) { - return -1; - } - lesPassagers->remove(lePassager); - return 0; +int Wagon::enlever(Passager& lePassager) { + list::iterator it = find(lesPassagers.begin(), lesPassagers.end(), &lePassager); + if(it == lesPassagers.end()) return 0; + + lesPassagers.erase(it); + return 1; } -ostream &operator<<(ostream &s, const Passager &p) { - s << "Wagon n° " << w.numero << " : " << w.nbPassagers->size() << " passager(s)." << endl; - s << "Reste " << w.capacite - w.nbPassagers->size() << " places(s)." << endl; - s << "Liste des passagers :\n" << w. +ostream &operator<<(ostream &s, const Wagon &w) { + s << "Wagon n° " << w.numero << " : " << w.lesPassagers->size() << " passager(s)." << endl; + s << "Reste " << w.capacite - w.lesPassagers->size() << " places(s)." << endl; + s << "Liste des passagers :\n" << w.lesPassagers << endl; + return s; } \ No newline at end of file diff --git a/Algo/tp/Cpp/3_tp/src/wagon.hpp b/Algo/tp/Cpp/3_tp/src/wagon.hpp index e95b9b4..364612d 100644 --- a/Algo/tp/Cpp/3_tp/src/wagon.hpp +++ b/Algo/tp/Cpp/3_tp/src/wagon.hpp @@ -3,7 +3,8 @@ #include #include -#include "passager.hpp" + +class Passager; class Wagon { @@ -11,7 +12,7 @@ private : int numero; - std::list *lesPassagers; + std::list lesPassagers; public : @@ -19,10 +20,10 @@ public : Wagon(int numero); - int ajouter(Passager lePassager); - int enlever(Passager lePassager); + int ajouter(Passager& lePassager); + int enlever(Passager& lePassager); - friend std::ostream &operator<<(std::ostream &s, const Passager &w); + friend std::ostream &operator<<(std::ostream &s, const Wagon &w); ~Wagon() = default; //~Wagon(){}; };