다음을 통해 공유


컴파일러 오류 C2896

'function1': 함수 템플릿 'function2'를 인수로 사용할 수 없습니다.

함수 템플릿은 다른 함수 템플릿에 대한 인수일 수 없습니다.

이 오류는 Visual Studio 2022 이상 버전에서 사용되지 않습니다.

다음 샘플에서는 C2896을 생성합니다.

// C2896.cpp
template<class T1, class T2> void f1(void(*)(T1, T2));
template<class T1, class T2> void f2(T1, T2);

int main() {
   f1(f2);   // C2896
}

제네릭을 사용하는 경우에도 C2896이 발생할 수 있습니다.

// C2896b.cpp
// compile with: /clr
generic<class T1> void gf1(T1){}
generic<class T1> void gf2(T1){}

int main() {
   gf1(gf2);   // C2896
   gf1(1);   // OK
}