Bueno, pues al menos poder, parece que se puede....pero no sé cómo aplicarlo en mi caso.
Código C++:
Ver original#include <iostream>
using namespace std;
template <typename T>
T maximo (T a, T b)
{
if (a>b)
{
return a;
}
return b;
}
template <typename TT>
struct functor
{
TT _a;
TT _b;
functor (TT a=0, TT b=0): _a(a),_b(b){}
TT operator()()
{
if (_a>_b)
{
return _a;
}
return _b;
}
};
int main()
{
int(*maxint)(int a,int b)=&maximo;
float(*maxfloat)(float a, float b)=&maximo;
cout<<maxint(800,80)<<endl;
cout<<maxfloat (6.75,6.755)<<endl;
functor<int>i(4,5);
cout<<i()<<endl;
functor<float>f(4.5,3.2);
cout<<f()<<endl;
return 0;
}
A ver si alguien me echa una mano...