如果我们在STL中看到qsort签名

void qSort (void* base, size_t num, size_t size,
        int (*compar)(const void*,const void*));

1)为什么不使用模板实现
    template <typename T, typename Ob>
void qSort(T *base, size_t num, size_t size,
               bool (*compar) (const TOb& left,const TOb& right) )

2)每种方法是否有优点/缺点?

3)使用C++在工业级代码中基本如何实现泛型函数?

最佳答案

qsort来自C,那里没有模板。如果要使用C++进行通用排序,请使用 std::sort

关于c++ - 为什么C++中的qsort无法通过模板实现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33831718/

10-13 06:30