Bonjour,

Je dois faire un programme avec des tableaux dynamiques sans utiliser de vector.

J'ai une classe Entree avec deux attributs : nom, numéro.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
class Entree{
    public :
    // Constructeur 
    Entree();
    Entree(std::string nom, std::string numero);
 
    // Méthodes d'accès
    void setNom(std::string nom);
    void setNumero(std::string numero);
 
    private :
    int m_nom;
    int m_numero;
}
Une classe Tableau avec un attribut Entree qui est un pointeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
// Tableau.h
class Tableau{
    public :
    // Constructeur avec valeur par défaut
    Tableau(int taille=100);
 
    // Destructeur
    ~Tableau();
 
    // Methods
    void ajouter(std::string nom, std::string numero);
 
    private :
    int m_taille;
    int m_indice;
    Entree *m_entree;
}
 
-------------------------------------------------------------------------------
 
// Tableau.cpp
Tableau::Tableau(int taille) : m_taille(taille), m_indice(0), m_entree(0){
    m_entree = new Entree[taille];
}
 
void Tableau::ajouter(string nom, string numero){
    m_entree[m_indice].setNom(nom);
    m_entree[m_indice].setNumero(numéro);
    m_indice++;
}
 
Tableau::~Tableau(){
    delete [] m_entree;
}
J'ai normalement bien fait mes allocations dynamiques seulement à l'exécution la fonction ajouter donne core dumped.
Je comprends pas ou se trouve le problème.

Merci d'avance pour votre aide.