Bonjour, je suis vraiment tout nouveau en c++ et je rencontre une difficulté. J'ai un peu de mal à comprendre comment utiliser la compilation séparée. Plus que des explications théoriques, j'aimerais avoir un exemple que je pourrai imiter de ce qu'il faut faire avec les fichiers .h et .cpp (jusqu'à maintenant je faisais un peu au hasard en priant pour que ça compile !)
En particulier, je n'arrive pas à déclarer un vector en tant que membre d'une classe en dehors du fichier contenant le main.
Par exemple j'écris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 //Fichier point.h #ifndef POINT_H #define POINT_H class point { int x; int y; public : void affiche(); void initialise(int abs, int ord); }; #endif
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 //Fichier point.cpp #include <iostream> #include "point.h" using namespace std; void point::initialise(int abs, int ord) { x=abs; y=ord; }J'obtiens alors comme erreurs (sur Dev-Cpp) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 //Fichier polygone.h #ifndef POLYGONE_H #define POLYGONE_H class polygone { vector<point> sommet; public : void ajouterSommet(point); void ajouterSommet(int x, int y); }; #endif
"ISO C++ forbids declaration of 'vector' with no type"
"expected ';' before '<' token"
"[Build Error] [polygone.o] Error 1"
Que faire ? Aurai-je des précautions à prendre quant à la gestion de la mémoire à cause de l'utilisation du vector ?
Partager