Bonjour tout le monde,
depuis plus de deux heures je n'arrive pas à trouver l'erreur qui empêche mon programme de compiler. Je tente pour la première fois de structurer mon programme avec cmake mais c'a pas l'air de bien réussir même si cela peut paraitre simple , mais je souhaite vivement vos aides. Je mets le code et âpres l'erreur:

le fichier CMakeLists.txt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
CMAKE_MINIMUM_REQUIRED(VERSION 3.0)
if(NOT WIN32)
	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
ENDIF()
ADD_EXECUTABLE(tp1
src/main.cpp
src/stocker.cpp
src/stocker.h
src/produits.h
src/produits.cpp
)
les fichiers.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef PRODUITS_H
#define PRODUITS_H
 
#include <iostream>
#include <string>
#include "stocker.h"
 
using namespace std
 
class Produits
{
private: 
	int ref;
	string designation;
public:
	Produits(int ref, string desig);
	~Produits();
	void affiche();
 
};
 
#endif
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#ifndef STOCKAGE_H
#define STOCKAGE_H
 
#include <string>
#include "produit.h"
#include <vector>
 
using namespace std;
 
	class Stockage 
	{
	private:	
		int num;
		vector<Produits*> vProd;
		string type;
 
	public:
		Stockage(int num,string type);
		~Stockage();
		void ajouterProduit(Produit*);
		void afficheTout();	
	};
 
#endif
le premier étant le fichier produits.h et le second le fichier stocker.h
Ensuite les fichiers .cpp

stocker.cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
#include "stocker.h"
#include <iostream>
#include<string>
using namespace std;
 
Stockage::Stockage(int num,string type){
	this->num=num;
	this->type=type;
}
produits.cpp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include "produits.h"
#include "stockage.h"
 
using namespace  std;
 
Produits::Produits(int ref, string desc){
	ref=ref;
	designation=desc;
}
 
Produits::affiche(){
	cout<<"Ref:"<<ref<<"  designation:"<<designation<<endl;
}
et en fin le main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include "produits.h"
#include "stocker.h"
 
using namespace std;
 
int main(int argc, char* argv[]){
	Stockage s(1,"viande");
	Produits pf1(1,"pf1");
 
	//pf1.affichage();
}
Et mon produit, il me dit que les types Produits et Stockage n'existent pas
je met une capture de mon écran quand je compile

Nom : cap.png
Affichages : 190
Taille : 171,0 Ko et je precise que mes fichiers sont bien structurer.
merci d'avance.