Я хотел бы иметь указатель на функцию шаблона, которая имеет 2 параметра типа T
.Указатель на функцию шаблона, которая НЕ является членом какого-либо класса
template <typename T>
typedef bool(* f)(T, T);
template <typename T>
bool mniejsze (T pierwszy , T drugi){
if(pierwszy < drugi)
return true;
return false;
}
template <typename T>
bool wieksze (T pierwszy, T drugi){
if(pierwszy > drugi)
return true;
return false;
}
Но я получаю:
error: template declaration of 'typedef'|
EDIT: Тогда я хотел бы передать этот указатель: ли это правильный путь?
template <typename T>
T minmax(T a[], int n,bool &f){
return f(a[0],a[1]);
}
C++ 11 поддержка? Вы понимаете, что получите тип 'template', и чтобы получить указатель, вам нужно будет поставить' T'? – Yakk
Возможный дубликат [C++ template typedef] (http://stackoverflow.com/questions/2795023/c-template-typedef) – MatthiasB
@MatthiasB Это не дубликат. Я спрашиваю о функции указателя, а не шаблона. – Yoda