Bonjour,

J ai 2 classes escalade et randonnée qui héritent d une classe activité abstraite.
J ai une classe sport qui contient un tableau d activités.

Extrait de la classe :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
class Sportif : public Naturel
{
private:
    int _inbAct;
    Activitee *_tabAct;
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Sportif::Sportif() : Naturel()
{
_tabAct = NULL;
_inbAct = 0;
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
void Sportif::AjouterAct(const Activitee * act){
    Activitee *tab[_inbAct+1];
    for (int i = 0; i <_inbAct; i++ )
        tab[i] = _tabAct[i];
    tab[_inbAct] = act;
    delete []_tabAct;
    _tabAct = tab;
    _inbAct ++;
}


Dans ajouter avant de connaitre le classes abstraite, je faisais un tableau intermédiaire de taille n +1 avec l objet ajouter. Je supprimer l ancien tableau puis j échanger les pointeurs. Afin d avoir un tableau de taille variable.

Sauf que je n y arrive pas là à faire passer un pointeur d activité en paramètre.
Enfin je suis perdu, j ai l’impression que tab n est pas un pointeur d Activitée donc ça plante mais j ai pas le droit de faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Activitee *tab = new Activitee[_inbAct+1];
car Activitee est une classe abstraite...

Activitee