 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
stephane Guest
|
Posted: Wed Feb 09, 2005 10:04 pm Post subject: fonction printLn() affiche tab de pointeur / prog objet |
|
|
Bonjour,
Je dois faire la méthode printLn de la classe Thoraire.
voici ce que j'ai fait: (mes deux classes sont au-dessous)
void Thoraire::printLn() const
{
cout<
for(int i=0;i
m_cases[i]->printLn() ;
}
Est-ce que cela vous semble juste ou y a-t-il des abérations?
(Je dois déclarer les chaînesde caractère de cette manière je ne peux pas
faire autrement, et je ne peux pas utiliser enum pour déclarer les
constantes non plus)
# ifndef CASE_H
# define CASE_H
#include <iostream>
#include <iomanip>
#include <cstring>
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[]= " ") ;
int getNumSemaine() const ;
double getDuree() const ;
void printLn() const ;
private :
//attributs obligatoires
int m_numSemaine ; //1..53
int m_numJour ; //1..7
double m_heureDebut ; //13h30 = 13.5
double m_duree ; //2h45 = 2.75
char m_matiere[10] ; //p ex. prog7
//attributs optionnels
char m_classe[10] ; //p. ex. 3IG-EE
char m_salle[10] ; //p. ex A46A
}
#endif
# ifndef HORAIRE_H
# define HORAIRE_H
# include <iostream>
# include <cstring>
using namespace std ;
#include « case.h »
class TenseignantError{} ; // l'enseignant ne correspond pas
class Toverflow{} ; //dépassement de capacité
//Nombre maximum de cases horaires pour un enseignant
const int CcasesMax = 1000 ;
class Thoraire{
public :
//crée un horaire vide
Thoraire (const char nomEnseignant[]) ;
//ajout d'une case horaire
void ajouteCase (Tcase* caseHor) throw (Toverflow) ;
//calcule de la charge horaire totale
double chargeHoraire() const ;
//retourne un extrait de l'horaire
//ne contient que les cases de la semaines spécifiée
//retourne un horaire vide si la semaine n'existe pas
Thoraire horaireHebdomadaire (int numSem) const ;
/*
Crée un nouvel horaire résultat de la fusion de deux horaires
Lève une exception de la classe TenseignantError si les horaires
N'ont pas le même nom d'enseignant
Lève une exception de la classe Toverflow si la fusion entraîne
Un dépassement de capacité (> CcasesMax) */
Thoraire operator+ (const Thoraire & hor) const throw
(TenseignantError,Toverflow) ;
Void printLn() ;
Private :
Char m_nomEnseignant [30] ; // obligatoire
Tcase* m_cases[CcasesMax] ;
Int m_nbCases ;
} ;
#endif
|
|
| Back to top |
|
 |
Alexandre Guest
|
Posted: Thu Feb 10, 2005 2:11 pm Post subject: Re: fonction printLn() affiche tab de pointeur / prog objet |
|
|
| Quote: | Je dois faire la méthode printLn de la classe Thoraire.
voici ce que j'ai fait: (mes deux classes sont au-dessous)
void Thoraire::printLn() const
{
cout<
for(int i=0;i
m_cases[i]->printLn() ;
}
Est-ce que cela vous semble juste ou y a-t-il des abérations?
|
si tu es sur que m_cases[i] est valide, pas de souci. S'il peut arriver
qu'il soit nul, alors un petit test avant serait le bienvenu...
| Quote: | (Je dois déclarer les chaînesde caractère de cette manière je ne peux pas
faire autrement, et je ne peux pas utiliser enum pour déclarer les
constantes non plus)
|
ça sent le sujet de TD ça ;-)
|
|
| Back to top |
|
 |
stephane Guest
|
Posted: Mon Feb 14, 2005 6:14 pm Post subject: Re: fonction printLn() affiche tab de pointeur / prog objet |
|
|
TD c'est Travail de Diplôme? en fait c'est pas pour un travail de diplôme
mais c'est pour préparer un exa...
Tu veux dire un test comme ça ?
if( m_nbCases = = 0)
cout<<"message" <
"Alexandre"
420c857b$0$30623$636a15ce (AT) news (DOT) free.fr...
| Quote: | Je dois faire la méthode printLn de la classe Thoraire.
voici ce que j'ai fait: (mes deux classes sont au-dessous)
void Thoraire::printLn() const
{
cout<
for(int i=0;i
m_cases[i]->printLn() ;
}
Est-ce que cela vous semble juste ou y a-t-il des abérations?
si tu es sur que m_cases[i] est valide, pas de souci. S'il peut arriver
qu'il soit nul, alors un petit test avant serait le bienvenu...
(Je dois déclarer les chaînesde caractère de cette manière je ne peux
pas
faire autrement, et je ne peux pas utiliser enum pour déclarer les
constantes non plus)
ça sent le sujet de TD ça ;-)
|
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|