Bonjour !
J'ai des fonctions qui prennent des deque en paramètres (besoin d'ajout au début et à la fin), mais je voudrai les rendre utilisable avec des vecteurs sans avoir à dédoubler le code ...
J'avais débord regarder si un type supérieur existait. On parle bien de Concept de Sequence, mais rien d'implémenté si j'ai bien compris.
Du coup je regarde du côté des templates mais j'ai un petit problème...
Voici un exemple des fonctions que j'ai actuellement
Je voudrai obtenir un truc du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 void functionBlabla(const std::vector<typeA>& blabla) { //code fonctionBlabla pour typeA } void functionBlabla(const std::vector<typeB>& blabla) { //code fonctionBlabla pour typeB (code complètement différent de celui pour le typeA) }
Le compilo n'a pas l'air d'accepter :S
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 template <class SequenceClass> void functionBlabla(const SequenceClass<typeA>& blabla) { //code fonctionBlabla pour typeA } template <class SequenceClass> void functionBlabla(const SequenceClass<typeB>& blabla) { //code fonctionBlabla pour typeB (code complètement différent de celui pour le typeA) }
Est-ce que quelqu'un a déjà rencontré le problème ou a une idée pour le contourner ?
Merci d'avance
Partager