j'ai terminé un travail que j'aimerais paufiner un peu avant de le remettre. En gros j'ai 2 trucs qui me chicote l'esprit:
- Diviser mon main en quelques fonctions
le main s'occupe présentement de récupérer (par paramètre si présent ou par cin) un nom de fichier, de lire les segments dans se fichier et les stocker dans un vecteur, puis faire le traitement sur le vecteur (double boucle for + if + cout)
le tout prend environ 50 lignes, ca vaut la peine que j'en fasse 3 fonctions ou de tout laisser dans le main est acceptable?
- #include de mon segment.h et de mon point.h dans le tp1.cc
exemple: dans mon tp1.cc, j'ai les includes suivants
Code :
- #include <fstream>
- #include <iostream>
- #include <vector>
- #include "segment.h"
- using namespace std;
|
dans mon segment.h
Code :
- #include <iostream>
- #include "point.h"
- using namespace std;
|
si je tente de faire l'include du point.h dans mon tp1.cc, ca cause l'erreur suivante
In file included from segment.h:2,
from tp1.c:37:
point.h:4: error: redefinition of `class Point'
point.h:4: error: previous definition of `class Point'
|
alors
a) j'include dans mon tp1.cc mais pas dans segment.h
b) j'include dans segment.h mais pas dans tp1.cc
c) j'include dans les 2 avec une méthode X (un ifndef? ca peut marcher? comment? autres facon?)
edit: le segment.cc utilise 2 objets Point pour se créer. J'utilise également un objet Point dans mon tp1.cc (Point intersection), qui sera passé par référence à une méthode d'objet Segment (sIntersecteAvec) et c'est pourquoi je voulais faire l'include du point.h dans le tp1.cc aussi
merci
Message édité par burgergold le 26-09-2004 à 04:33:58