Compilerfehler C2764
'Parameter': Vorlagenparameter wurde in teilweiser Spezialisierung 'Spezialisierung' nicht verwendet oder ist nicht ableitbar
Ein Vorlagenparameter wird in einer teilweisen Spezialisierung nicht verwendet. Dadurch wird die teilweise Spezialisierung unbrauchbar, da der Vorlagenparameter nicht abgeleitet werden kann.
Beispiel
Im folgenden Beispiel wird C2764 generiert:
// C2764.cpp
#include <stdio.h>
template <class T1, class T2>
struct S {
int m_i;
};
template <class T1, class T2>
struct S<int, T2*> { // C2764
// try the following line instead
// struct S<T1(*)(T2), T2*> {
char m_c;
};
int main() {
S<int, char> s1;
S<void (*)(short), short *> s2;
s2.m_c = 10;
s1.m_i = s2.m_c;
printf_s("%d\n", s1.m_i);
}