Use template class instead of template function in wxVectorSort().
This allows the code to compile with VC6 which has trouble with explicit specification of the template functions instantiation. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -448,12 +448,15 @@ inline typename wxVector<T>::size_type wxVector<T>::erase(size_type n)
|
|||||||
|
|
||||||
namespace wxPrivate
|
namespace wxPrivate
|
||||||
{
|
{
|
||||||
// This function is a helper for the wxVectorSort function, and should
|
|
||||||
// not be used directly in user's code.
|
|
||||||
|
|
||||||
|
// This is a helper for the wxVectorSort function, and should not be used
|
||||||
|
// directly in user's code.
|
||||||
template<typename T>
|
template<typename T>
|
||||||
int wxCMPFUNC_CONV wxVectorSort_compare(const void* pitem1, const void* pitem2, const void* )
|
struct wxVectorSort
|
||||||
{
|
{
|
||||||
|
static int wxCMPFUNC_CONV
|
||||||
|
Compare(const void* pitem1, const void* pitem2, const void* )
|
||||||
|
{
|
||||||
const T& item1 = *reinterpret_cast<const T*>(pitem1);
|
const T& item1 = *reinterpret_cast<const T*>(pitem1);
|
||||||
const T& item2 = *reinterpret_cast<const T*>(pitem2);
|
const T& item2 = *reinterpret_cast<const T*>(pitem2);
|
||||||
|
|
||||||
@@ -463,7 +466,8 @@ int wxCMPFUNC_CONV wxVectorSort_compare(const void* pitem1, const void* pitem2,
|
|||||||
return 1;
|
return 1;
|
||||||
else
|
else
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
|
||||||
} // namespace wxPrivate
|
} // namespace wxPrivate
|
||||||
|
|
||||||
@@ -473,7 +477,7 @@ template<typename T>
|
|||||||
void wxVectorSort(wxVector<T>& v)
|
void wxVectorSort(wxVector<T>& v)
|
||||||
{
|
{
|
||||||
wxQsort(v.begin(), v.size(), sizeof(T),
|
wxQsort(v.begin(), v.size(), sizeof(T),
|
||||||
wxPrivate::wxVectorSort_compare<T>, NULL);
|
wxPrivate::wxVectorSort<T>::Compare, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user