Seg fault sur une class matrice
Bonjour,
Je programme une classe matrice, héritant d'une classe vecteur (un tableau qui connais sa taille).
Malheureusement, je me tape un segmentation fault a chaque fois que je veux toucher à ma matrice ... je comprend pas :/
___Vecteur
Code:
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
|
class Vecteur
{
int taille;
double* value;
public:
Vecteur(int=1);
~Vecteur();
void vectrand(int n=10);
};
Vecteur::Vecteur(int n)
{
int i;
taille=n;
value = new double[n];
for(i=0; i<n; i++)
value[i]=0;
}
Vecteur::~Vecteur()
{
delete[] value;
}
void Vecteur::vectrand(int n)
{
int i;
for(i=0; i<taille; i++)
value[i]= rand()%n;
} |
__Matrice
Code:
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 40
|
class Matrice : public Vecteur
{
int line;
Vecteur** tvect;
public:
Matrice(int col=1, int line=1);
void matrand(int n=10);
Vecteur& operator[](int)const;
};
//Je verrai plus tard pour le destructeur ^^
Matrice::Matrice(int line, int col)
{
int i;
assert(line>0 && col>0);
this->line = line;
Vecteur** tvect = new Vecteur*[line];
for(i=0; i<line; i++)
tvect[i] = new Vecteur(col);
}
Vecteur& Matrice::operator[](int i)const
{
return (*tvect)[i];
}
void Matrice::matrand(int n)
{
int i;
for(i=0; i<line; i++)
(*this)[i].vectrand(n);
} |
Merci d'avance !