1
함수에 전달 된 매개 변수에서 추론 할 수있는 형식 템플릿 매개 변수와 형식이 아닌 템플릿 매개 변수를 모두 포함하는 템플릿 함수를 만들려고합니다. 명시 적으로 배치됩니다. 컴파일러가 각 유형이 무엇인지 추측 할 수있는 것처럼 보이지만 비 형식 템플릿 매개 변수를 지정하면 모든 템플릿 매개 변수가 필요합니다. 형식이 아닌 템플릿 매개 변수 만 지정할 수 있습니까, 아니면 모두 또는 아무것도 아니겠습니까?명시 적 유형이 아닌 매개 변수와 암시 적 형식 매개 변수가있는 템플릿 함수 호출
#include <iostream>
#include <typeinfo>
template <typename T, bool bPrint=true>
void f(T var) {
if (bPrint)
std::cout << typeid(var).name() << std::endl;
}
int main() {
f(3); //works
f<false>(3); //error: template argument deduction/substitution failed
}
템플릿 매개 변수는 동안 인스턴스 선언에서 정확히 동일한 순서로 템플릿에 전달해야 ... –