diff options
author | Benjamin Chausse <benjamin@chausse.xyz> | 2023-01-12 23:40:59 -0500 |
---|---|---|
committer | Benjamin Chausse <benjamin@chausse.xyz> | 2023-01-12 23:40:59 -0500 |
commit | b4f16386c70bfeab700e7cc129f2f04295aa0059 (patch) | |
tree | 8211e50bdf4f22eed2d2f2a19166e3a6f4ae5155 /vecteur.h | |
parent | 0ef3e40f726f35b86d79426104234d815cea2bb9 (diff) |
vecteur est fomrmes sont finis
Diffstat (limited to 'vecteur.h')
-rw-r--r-- | vecteur.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/vecteur.h b/vecteur.h new file mode 100644 index 0000000..58843f7 --- /dev/null +++ b/vecteur.h @@ -0,0 +1,39 @@ +#include <iostream> +#include "forme.h" + +using namespace std; + +// - [x] Items stockés sont des pointeurs de Forme +// - [ ] Items toujours contigus en mémoire +// - [ ] connaître la capacité maximale du vecteur +// - [ ] connaître la taille courante du vecteur +// - [ ] Lorsqu'il manque d'espace pour ajouter une forme, +// le vecteur double sa capacité +// - [ ] vider le vecteur en un seul appel +// - [ ] lorsque le vecteur est vidé, détruire ses formes +// - [ ] savoir si le vecteur est vide (bool) +// - [ ] ajouter une forme à la fin du vecteur (true si ok) +// - [ ] supprimer une forme à un index (retourne la forme) NULL on error +// - [ ] récupérer une forme à un index (retourne la forme) NULL on error +// - [ ] afficher le vecteur en utilisant Forme::afficher() + +class Vecteur { + private: + int capacite; // capacité maximale actuelle du vecteur + int taille; + // dynamic array of pointers to Forme + Forme **formes; + public: + Vecteur(); + ~Vecteur(); + // Informations + bool estVide(); + Forme *getForme(int index); + int getTaille(); + void afficher(ostream &s); + // Manipulations + bool ajouterForme(Forme *f); + Forme *supprimerForme(int index); + void vider(); +}; + |