Bonjour, je ne suis encore très à l'aise avec les templates, donc j'aurais besoin de vos lumières pour résoudre mon problème de compile.

Le but du jeu est de créer une fonction xorand qui prend deux tableaux (v1,v2) de type T et de taille N, et calcule le xor de tous les éléments de v1&v2. Sans "templatiser" le type des tableaux ça marchait bien, mais depuis que j'ai rajouté le typename T, rrien ne va plus.

Voici le code fautif :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
template<typename T,int N> T inline xorand(T* v1, T* v2)
{
	return xorand<T,N/2>(v1, v2) ^ xorand<T,N-N/2>(v1+N/2, v2+N/2);
}
// Spécialisation pour N=1
template<typename T> T inline xorand<T,1>(T* v1, T* v2)
{
	return v1[0] & v2[0];
}
Merci.