Fonction templates amies

littlefl Messages postés 21 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 2 juillet 2003 - 19 avril 2003 à 22:40
littlefl Messages postés 21 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 2 juillet 2003 - 19 avril 2003 à 23:07
Ma question peu paraître simple (et peut-être qu'elle l'est) mais je n'arrive pas à déclarer une fonction template amie d'une classe. La raison, c'ets que je ne sais aps avec quelle syntaxe la déclarer.

Une classe template se déclare classname<...> et uen fonction à l'appel function<...>(...) mais lorsqu'on la déclare amie, quelle syntaxe employer ?

Merci d'avance

1 réponse

littlefl Messages postés 21 Date d'inscription lundi 10 mars 2003 Statut Membre Dernière intervention 2 juillet 2003
19 avril 2003 à 23:07
Bon, j'ai fait quelques essais et apparemment, la syntaxe suivante compile :

exemple
ma fonction se présente comme suit :

template<typename Type> void exchange(Type &_t1, Type &_t2);

et je la déclare amie comme suit :

friend void exchange(MyType &_t1, MyType &_t2);

Ceci compile mais pas ceci :

friend void exchange<MyType>(MyType &_t1, MyType &_t2);

Pourquoi ??
0
Rejoignez-nous