Erreur du compilateur C2752
'template' : plusieurs spécialisations partielles correspondent à la liste d’arguments du modèle
Une instanciation était ambiguë.
L’exemple suivant génère l’erreur C2752 :
// C2752.cpp
template<class T, class U>
struct A {};
template<class T, class U>
struct A<T*, U> {};
template<class T, class U>
struct A<T,U*> {};
// try the following line instead
// template<class T, class U> struct A<T*,U*> {};
int main() {
A<char*,int*> a; // C2752 an instantiation
// OK
A<char*,int> a1;
A<char,int*> a2;
A<char,int> a3;
}