vector<Mere> et vector<Fille> même combat
Bonjour,
Dans mon programme, j'utilise des std::vector de classes qui héritent toutes d'une même classe mère comme suit
Code:
1 2 3
| class Symbol {...};
class Polygon : public Symbol {...};
class Line : public Symbol{...}; |
j'ai ailleurs dans le programme 2 vecteurs :
Code:
1 2
| std::vector<Line> _vectLine;
std::vector<Polygon> _vectPolygon; |
je souhaite écrire une méthode qui s'appelle aussi-bien sur un vector<Line> que sur un vector<Polygon>, donc j'écris
Code:
void doSomething(std::vector<Symbol> vect);
seulement voilà, lors de l'appel de ma méthode, il me dit qu'il ne peut pas convertir les vecteurs ...
Code:
1 2
| std::vector<Line> _vect;
doSomething(_vect); |
Citation:
error C2440: 'cast de type'*: impossible de convertir de 'std::vector<_Ty>' en 'std::vector<_Ty>'
Je suis sûr que la chose doit être possible mais la syntaxe m'échappe.
J'ai pas envie de devoir déclarer tout mes vecteurs de classe fille comme des vecteurs de classe mère ...
d'avance je vous remercie de votre aide :)