Syntaxe fonction template dans classe template
Bonjour,
j'ai un problème de syntaxe pour déclarer une fonction membre dans l'une de mes classes template. Le problème est reproductible avec ce bout de code normalement :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| template<typename T1,size_t T2> class Foo
{
template<size_t T3> Foo<T1,T2> fun(Foo<T1,T2>,Foo<T1,T3>);
};
template<typename T1,size_t T2,size_t T3> Foo<T1,T2>::fun(Foo<T1,T2> larg,Foo<T1,T3> rarg)
{
return Foo<T1,T3>;
}
int main()
{
Foo<double,3> toto;
} |
La fonction membre fun n'est par reconnue à la compilation. J'ai essayé d'autres syntaxes mais rien n'y fait. Est-ce que quelqu'un sait d'où vient le problème?
Merci beaucoup!