Bonjour,

En gros j'ai le code suivant :

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
17
18
19
 
template<typename T>
static ECBCase* CreateCase(int x)
{
	return new T;
}
 
static struct
{
	char c;
	ECBCase* (*func) (int);
	uint flags;
} case_type[] = {
 	{ 'v', CreateCase<ECBVille>, C_VILLE            },
	{ 'V', CreateCase<ECBVille>, C_VILLE|C_CAPITALE },
	{ 'm', CreateCase<ECBMer>,   C_MER              },
	{ 't', CreateCase<ECBTerre>, C_TERRE            },
	{ 'p', CreateCase<ECBPont>,  C_PONT             }
};
Bien evidement ça ne compile pas, j'ai l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
Map.cpp:48: erreur: no matches converting function 'CreateCase' to type 'class ECBCase* (*)(int)'
Map.cpp:32: erreur: candidates are: template<class T> ECBCase* CreateCase(int)
Alors j'aimerais savoir comment faire donc pour faire ce pointeur vers un prototype de fonction template.

Merci.