Bonjour,
Je me lance un peu dans le C++ et je ne connais pas du tout. On m'avait dit :
- "Si tu connais java et C alors pas de problème pour C++"...
Et bien, c'est pas si facile que ça!
Alors je dois reprendre le code de quelqu'un et faire une amélioration. Voci mon code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| class Discriminant :public Automate{
public :
virtual bool Init(bool fullreset=false);
protected :
virtual bool InitFunction(){return true;};
double * discriminantFunction ;
}
[...]
class Lda : public Discriminant{
protected:
bool InitFunction();
}
[...]
class Lda16 : public Lda{
public :
bool Init(bool fullreset=false);
} |
Ensuite,
dans Init() de Lda16, j'initialise ma fonction discriminante :
discriminantFunction = new double[16];
et dans InitFunction(), je veux la remplir (discriminanteFunction[0] = ....)
Ca compile, mais à l'éxecution, la fonction n'est pas initialisée donc ça plante (alors que le programme passe bien dans la fonction Init() de Lda16...
Quelle est la portée de ma variable discriminanteFunction déclarée dans la classe Discriminante?
Merci d'avance si vous arrivez à me comprendre!
Partager