Bonjour,

J'écris une petite bibliothèque j'ai 2 classes dedans :

Code layer_part.h : 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
#pragma once
 
#include <string>
#include <vector>
#include "Polygon.h"
 
class __declspec(dllexport) Layer_part
{
private:
	std::string _filter;
	int _order;
	std::vector<Polygon> _vectPoly;
public:
	Layer_part(void);
	Layer_part(std::string expr_filter, int order);
	~Layer_part(void);
 
	void addPolygon(int fill_color, std::string column_filter, int order);
};
et
Code Polygon.h : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#pragma once
 
#include <string>
 
class __declspec(dllexport) Polygon
{
private:
	int _color;
	std::string _filter;
	int _order;
public:
	Polygon();
	Polygon(int fill_color, std::string column_filter, int order);
	~Polygon(void);
};

à la compilation, la déclaration du vecteur donne les erreurs suivantes :

- error C2923: 'std::vector'*: 'Polygon' n'est pas un argument de type modèle valide pour le paramètre '_Ty'

- warning C4251: 'Layer_part::_vectPoly'*: class 'std::vector<_Ty>' nécessite une interface DLL pour être utilisé(e) par les clients de class 'Layer_part'

Je ne comprend pas