Salut!![]()
Est-il possible de limiter les types des paramètres template afin d'éviter des incohérences?
Par exemple une fonction qui renverrait un nombre au hasard avec en paramètre template le type du nombre retourné:
Comment limiter la spécialisation aux types "int", "double" ... en empêchant une éventuelle spécialisation vers un type "vector" par exemple?
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 #include <iostream> using namespace std; template<typename T> T f(){ return static_cast<T>(rand()%10+1); } int main () { srand(time(NULL)); int n1=f<int>(); double n2=f<double>(); system("pause"); }
Merci.![]()
Partager