Bonjour à tous,

En attendant les concepts de C++0x, j'ai besoin d'écrire des classes de traits à utiliser avec boost::enable_if.

J'ai un ensemble de classes ayant pour point commun de définir un typedef tail_sequence_node_t. J'aimerais écrire une classe de traits permettant de savoir si le type donné fait partie de cet ensemble de classes.
Cette première tentative infructueuse me renvoie un message d'erreur à la compilation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
template<class T>
struct is_sequence_node
{
	static const bool value = false;
};
 
template<class T>
struct is_sequence_node<typename T::tail_sequence_node_t>
{
	static const bool value = true;
};
Code : Sélectionner tout - Visualiser dans une fenêtre à part
erreur: paramètres du patron ne sont pas utilisés dans la spécialisation partielle: 'T'
Que faire ?