Comment rendre un paramêtre template déductible
Bonjour à tous!
l'exemple suivant produit une erreur car T n'est pas déductible dans la spécialisation partielle.
Code:
1 2 3 4 5 6 7 8 9
| template <typename T>
struct A {
int F(T &c) { /* actions */ }
};
template <class T>
struct A<std::is_member_function_pointer<typename T::G>> {
int F(T &c) { /* actions */return c.G(); }
}; |
Mon besoin :
Je souhaiterais spécialiser A de sorte que lorsque le type de l'argument a une fonction G, A puisse l'utiliser.
Comment faire pour contourner cette erreur ?
Par avance merci!