blob: 58843f7e59f7743c7317b39e07ee76e3639dc6d5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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();
};
|