Salut à tous,
Pour expliquer mon problème voici le code qui me pose problème:
Lorsque je fais...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 class CBase { public: template <class T> T get(std::string str) { if (str == "un") return 42; if (str == "deux") return std::string("test"); } }
...le code ne veut pas compiler car (dans ce cas) la conversion d'un string en int est impossible, malgré le fait que i soit un int et que la fonction get doive me retourner un int (puisque int est le parametre template)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 CBase unTest; int i = inTest.get<int>("un");
Y a-t-il un moyen de parvenir a faire cela ?
Partager