C++ 为什么用c+排序+;不是通过模板实现的
如果我们在stl中看到qsort签名C++ 为什么用c+排序+;不是通过模板实现的,c++,generics,C++,Generics,如果我们在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 (*c
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) )
模板
void qSort(T*base,size\T num,size\T size,
布尔(*比较)(常数TOb和左侧,常数TOb和右侧))
2) 每种方法都有什么优点/缺点吗
3)C++中的泛型函数如何在工业级代码中实现?
< P> <代码> qSoS>代码>来自C,其中没有模板。如果你想在C++中使用一个泛型排序,则使用< /p> q排序。模板是c++的一项功能,非常容易自己实现: