template<class T>
struct gSorting : public std::binary_function<T, T,bool> {
bool operator() (int number, int n2)
{
cout << "int" << endl;
return (number<n2);
}
bool operator() (double number, double n2)
{
cout << "double" << endl;
return (number<n2);
}
bool operator() (const MYClass& obj1, const MYClass& obj2)
{
return (obj1.element<obj2.element);
}
};
int main () {
gSorting<int> sorting_object;
std::cout << std::boolalpha << sorting_object (2.0f, 4.3f) << ".\n";
std::getchar();
return 0;
}
这段代码有问题吗?有那么通用吗?或者有没有更好的方法来做一个通用的排序算法来包括我使用的所有类
它编译,输出指向双这是好的,但是我怎样才能使它成为一个模板,但不必在声明中指定输入类型?
gSorting< int > 排序对象;
-------------^^^^ 我们不需要任何特定类型?我对吗
输出: