Array of pointers makes an error

From: Stephane Vollet (stephane.vollet_at_bluewin.ch)
Date: 01/30/05


Date: Sun, 30 Jan 2005 22:01:38 +0100

Can someone tell me what's wrong with my code here?
When compiling, it says :

 error C2143: syntax error : missing ';' before '*'
 error C2501: 'Tcase' : missing storage-class or type specifiers
error C2501: 'm_cases' : missing storage-class or type specifiers

the compiler points out the problem on this:
 Tcase* m_cases[CcasesMax];

it is in the class Thoraire.

here is my code.

#include "case.h"

Tcase::Tcase(int numSemaine, int numJour, double heureDebut, double duree,
  char matiere[], char classe[], char salle[]) // pas de val par défaut ici!
{
 m_numSemaine = numSemaine;
 m_numJour = numJour;
 m_heureDebut = heureDebut;
 m_duree = duree;
 strcpy(m_matiere,matiere);
 strcpy(m_classe,classe);
 strcpy(m_salle,salle);

}
#ifndef CASE_H
#define CASE_H

#include <iostream>
#include <iomanip>
#include <cstring>

#include "horaire.h"

using namespace std;

const int Clundi=1;
const int Cmardi=2;
const int Cmercredi=3;
const int Cjeudi=4;
const int Cvendredi=5;
const int Csamedi=6;
const int Cdimanche=7;

class Tcase{

public:

 Tcase(int numSemaine, int numJour, double heureDebut, double duree,
  char matiere[]=" ", char classe[]=" ", char salle[]=" ");

private:

 int m_numSemaine;
 int m_numJour;
 double m_heureDebut;
 double m_duree;
 char m_matiere[10];
 char m_classe[10];
 char m_salle[10];

};

#endif
#include "horaire.h"
#include "case.h"

Thoraire::Thoraire(const char nomEnseignant[])
{
 strcpy(m_nomEnseignant,nomEnseignant);

 //m_cases=NULL;

 m_nbCases=0;
}

#ifndef CASE_H
#define CASE_H

#include <iostream>
#include <iomanip>
#include <cstring>

#include "case.h"

using namespace std;

class TenseignantError{};

class Toverflow{};

const int CcasesMax=1000;

class Thoraire{

public:

 Thoraire(const char nomEnseignant[]);

private:

 char m_nomEnseignant[30];
 Tcase* m_cases[CcasesMax];
 int m_nbCases;
};

#endif

// main

#include <iostream>
using namespace std;

#include "case.h"
#include "horaire.h"
int main ()
{
 Tcase case1(20,1,8,1.5,"programation");
 return 0;
}



Relevant Pages